highcharts datetime axis, how to comput correct timestamp?
假设我想绘制一个系列,其中第一个点代表2013年11月5日11:30的时间。如果我用不同时区的浏览器查看我的图表,我希望时间11:30相同。 因此我想useUTC = true。 现在,我如何计算赋予highcharts的值(毫秒)?
我试过这个python代码:
1 2 3 4 | >>> import datetime,time >>> t=datetime.datetime(2013,11,5,11,30,00) >>> time.mktime(t.timetuple())*1000 1383647400000.0 |
但是如果我在高位图中插入值1383647400000.0,我会得到一个时间点10:30而不是11:30。
这是一个重现故障的代码:http://jsfiddle.net/2BffA/6/
我究竟做错了什么?
问题出在python代码中......构建UTC时间戳的正确方法是2013年11月5日11:30
1 2 3 4 | >>> import datetime, calendar >>> t=datetime.datetime(2013,11,5,11,30,00) >>> calendar.timegm(t.utctimetuple())*1000.0 + t.microsecond * 0.0011383651000000.0 1383651000000.0 |
如果useUTC = true,这是发送到highcharts的正确时间戳