获取 d3 以根据时间戳显示正确的日期


Get d3 to show correct dates based on timestamp

我正在使用数据库中的数据使用 d3 创建一个图表,但没有正确显示日期,而是只显示 01/17/1970。

我以这种格式从数据库中获取日期:

YYYY-MM-DD

并将其转换为时间戳,如下所示:

strtotime($t)

这会产生如下时间戳:

1417215600, 1417302000, 1417388400

但图表只显示上面提到的 unix 第二个空值。

这就是 x 轴的格式

 chart.xAxis
           .tickFormat(function(d) { return d3.time.format('%x')(new Date(d)) });

我住在意大利,我的应用程序中的默认时区是 CET,所以我尝试设置

date_default_timezone_set('UTC');

但没有成功。

有人可以建议吗?

通过在每个时间戳中添加 .000 来解决它,javascript 想要 13 个字符的时间戳而不是 PHP 的 10 个字符的时间戳:

strtotime($t).'000'

返回我的图表的正确输出