Highcharts(highstock)在x轴线图上绘制不正确的日期

时间:2013-07-15 12:44:38

标签: javascript highcharts highstock

这里我有一个我生成的高价图表示例:http://jsfiddle.net/9gTN8/

有3个数据点,使用Date.UTC方法定义日期。尽管该系列中的最后一个日期为2013-07-15,但该点是在8月份绘制的。同样地,其他点似乎比它们应该的位置提前一个月绘制。

我使用ordinal: false来允许不规则的日期间隔,这是highstock的一个特征。

这是什么原因,我该如何解决?

编辑:

我在每个数据点的日期都是从php生成的:

echo "\n[Date.UTC(" . date("Y, m, d", strtotime($date)) . "), " . $value . "]";

我知道我可以有几个php date()函数来减少我自己的月份,但我希望有更高效的方法。例如。是否可以在php中复制javascript Date.UTC方法并直接输出大数字(自1970年1月1日起的毫秒数)?

1 个答案:

答案 0 :(得分:0)

解决方案是不使用Date.UTC,只使用php的日期格式:

echo "\n[" . 1000 * date("U", strtotime($date)) . ", " . $value . "]";

这将以秒为单位输出the manual中定义的纪元时间戳。按照javaScript的要求,按1000的速度获得毫秒。