1

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

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

我曾经ordinal: false允许不规则的日期间隔,这是 highstock 的一个特性。

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

编辑:

我在每个数据点中的日期都是从 php 生成的,如下所示:

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

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

4

1 回答 1

0

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

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

这将以秒为单位输出手册中定义的纪元时间戳。乘以 1000 以获得 javaScript 所需的毫秒数。

于 2013-07-15T13:24:39.627 回答