0

jqplot用于绘制图表。下面是代码:

    $.jqplot.config.enablePlugins = true;
    // For these examples, don't show the to image button.
    $.jqplot._noToImageButton = true;




    var ticks = ["8/25/2008","1/22/2009","6/20/2009","7/20/2009","10/20/2009","6/20/2010","2/20/2011"] ; 



  goog = [[56, 60, 79,20,34,67]];


  var plot1 = $.jqplot(id, goog, {
      title: title,
      series: [{
          label: series,
          neighborThreshold: -1
      }],



       axesDefaults: {                                                       
          tickRenderer: $.jqplot.CanvasAxisTickRenderer ,
          tickOptions:{
            angle: -30,
            fontSize: '10pt'

          }
      }, 


      seriesDefaults: {
          showMarker:true,                      
          pointLabels: { show:false }        
        },

      axes: {
          xaxis: {
              renderer: $.jqplot.DateAxisRenderer,
              min:'Sun Aug 24 16:00:00 2008',
              max:'Sun Jan 21,16:00:00 2009',
              numberTicks: 7,
             // tickInterval: '4 months',
             ticks : ticks,


              tickOptions:{formatString:'%#c'},

          },
          yaxis: {
              tickOptions:{formatString:'%.2f'}
          }
      },
      cursor:{
        show: true,
        zoom:true,
        showTooltip:true
      }
  });

  $('.button-reset').click(function() { plot1.resetZoom() });

这些是我面临的问题

  1. 没有绘制数据点,所以我得到一个空白图表。

  2. 缩放时,只有 Y 轴发生变化,X 轴保持不变。

  3. CanvasAxisTickRenderer不工作,所以我没有得到ticks指定的角度。

  4. min并且max对于 Xaxis 也不起作用,图形本身绘制了数组ticks中的第一个和最后一个值。ticks

我是新手,jquery所以请不要介意这么长的问题,非常感谢任何帮助。提前致谢。

4

2 回答 2

0

您的数据没有很好地声明,您需要为每个点指定一个 [x,y] 值数组。您的 goog 变量变为:

goog = [[["8/25/2008",56], ["1/22/2009",60], ["6/20/2009",79],["7/20/2009",20 ],["10/20/2009",34],["6/20/2010",67],["2/20/2011",42]]];

PS:我还在 goog 中添加了一个新值,以便将 7 个点作为 7 个刻度。

于 2013-03-06T07:46:05.420 回答
0

它没有在 x 轴上缩放,因为您在 x 轴上指定了“刻度”选项。我有同样的问题。在我看来这是一个错误。即使我设置刻度(作为初始“未缩放”值),它也应该按预期工作。

于 2015-08-07T14:20:13.707 回答