2012-05-08 87 views
1

我试图让它的日期x轴。 x数据是时间戳。不知何故,我无法做到。jqplot日期轴从时间戳

该生产线具有类似的值:

line = [[1334856823000, 2], [1334856853000, 1], [1334856883000, 0], [1334856913000,4],[1334856914000, 13], [1334856943000, 16], [1334856973000, 23], [1334857003000, 24], [1334857033000, 36], [1334857063000, 14], [1334857093000, 1]] 

      $.jqplot('container', [line], 
       { title: "Snelheidsgrafiek", 
       axes: { 
        xaxis: { 
        rederer: $.jqplot.DateAxisRenderer, 
        rendererOptions: {tickRenderer: $.jqplot.canvasAxisTickRenderer}, 
        tickOptions: {formatString: '%H:%M'} 
        }, 
        yaxis: { 
        min: 0 
        } 
       } 
      }); 

现在,它只是显示为%H:%M标签。 我尝试了很多变化,但无法实现。

回答

3

在这里。 您的问题是tickRenderer: $.jqplot.CanvasAxisTickRenderer应与renderer处于同一水平,而不在rendererOptions之内。

Please see the jsfiddle.

编辑

而且你缺少的CanvasTextRenderer其中CanvasAxisTickRenderer而进口和你忘了大写字母C开始,像这样:$.jqplot.CanvasAxisTickRenderer

+0

THX,but..damn,不能让它去......我看到它在工作的jsfiddle,甚至与整个线阵列在它。我复制了代码和脚本标记,但仍显示'%H:%M'。任何想法如何调试? – Jeroen

+0

看看Firebug控制台。看看你是否有一些有意义的错误。另外请让我知道你正在导入什么(即你使用什么脚本,以及如何将它们添加到你的页面)。 – Boro

+0

我使用jQuery 1.6.4,我已经下载了最新的zip(版本1.0.0b2-r1012)并使用树缩小文件。 我把所有东西都搬到了测试服务器上,现在它可以正常工作,尽管缩放比例(x轴的最小值和最大值仍然很奇怪,我会给你发一个链接 – Jeroen

0

试试这个。这是从工作代码中快速复制出来的。我剥去了很多东西给你一个更好的概述。也许它在这里和那里缺少一个括号,但它应该让你知道要设置什么以及受影响的变量。这确实是100%。

确保包含所需的Javascript库以及。

如果您需要更多的细节,让我知道...

<script type="text/javascript">(function($) { 
      var indizes; 
      var plot1; 
      $(document).ready(function() { 
       $(function() { 
        $(document).ready(function() { 
indizes = [["2011-12-31",0.00],["2012-01-31",6.25],["2012-02-28",12.56],["2012-03-31",17.62],["2012-04-30",18.72],["2012-05-31",12.44],["2012-06-30",15.14],["2012-07-31",20.27],["2012-08-31",20.82],["2012-09-30",24.47],["2012-10-31",25.68],["2012-11-30",26.41],["2012-12-31",28.43],["2013-01-31",32.76],["2013-02-28",36.82],["2013-03-31",42.29],["2013-04-30",43.14],["2013-05-31",45.87],["2013-06-30",40.68],["2013-07-31",50.58],["2013-08-31",46.00],["2013-09-29",56.20],["2013-10-02",55.40]];       ; 

      draw_first(); 

      function draw_first() { 
       plot1 = $.jqplot("chartdiv", [indizes], { 
        seriesColors: ["rgba(0, 189, 255, 1)"], 
        title: '', 
        grid: { 
         background: 'rgba(57,57,57,0.0)', 
         drawBorder: false, 
         shadow: false, 
         gridLineColor: '#333', 
         gridLineWidth: 1 
        }, 
        legend: { 
         show: true, 
         placement: 'inside', 
         location: 'nw' 
        }, 
        seriesDefaults: { 
         rendererOptions: { 
          smooth: false, 
          animation: { 
           show: true 
          } 
         }, 
         showMarker: true, 
         pointLabels: {show: pointlabels}, 
         markerOptions: { 
          style: 'filledSquare' 
         } 
        }, 
        series: [ 
         { 
          label: 'Indizes' 
         } 
        ], 
        axesDefaults: { 
         rendererOptions: { 
          baselineWidth: 2, 
          baselineColor: '#444444', 
          drawBaseline: false 
         } 
        }, 
        axes: { 
         xaxis: { 
          renderer: $.jqplot.DateAxisRenderer, 
          tickRenderer: $.jqplot.CanvasAxisTickRenderer, 
          tickOptions: { 
           formatString: "%b", 
           angle: 0, 
           textColor: '#888' 
          }, 
          min: "2012-10-01", 
          max: "2013-10-31", 
          tickInterval: "1 month", 
          drawMajorGridlines: true 
         }, 
         yaxis: { 
          renderer: $.jqplot.LinearAxisRenderer, 
          pad: 0, 
          rendererOptions: { 
           minorTicks: 1 
          }, 
          drawMajorGridlines: false, 
          tickOptions: { 
           formatString: function() { 
            return '%#.1f %'; 
           }(), 
           showMark: false, 
           textColor: '#888' 
          } 
         } 
        } 
       }); 
      } 

     })(jQuery);</script>