最新消息:

关于highstock横坐标的一些的一些说明(1)使用UTC时间

Jquey admin 699浏览 0评论

highstock的数据格式采用的是[[时间,数据],[时间,数据],[时间,数据],[时间,数据]],而时间采用的是13位的毫秒值,如[1133136000000,69.66],采用的时间格式为UTC(世界标准时间),因此在后台对时间处理时,不能只是简单的转化为毫秒值,如果只是专为毫秒值,在前台的图形上会出现数据线跟时间有错位的现象。只有转化为UTC格式下的毫秒值才不会出现错位。

java下取utc下的毫秒值:
Date date = null;
DateFormat df = new SimpleDateFormat(“yyyy-MM-dd”);
date = df.parse(“2012-11-26″);
Calendar cal = Calendar.getInstance(TimeZone.getDefault());//TimeZone.getDefault()获取主机的默认 TimeZone,即时区偏移量
cal.setTime(date);
list.add(date.getTime()+cal.getTimeZone().getRawOffset());//cal.getTimeZone().getRawOffset()是相对utc的偏移量
//date.getTime()+cal.getTimeZone().getRawOffset()就是2012-11-26对应的utc下的毫秒值
非UTC格式毫秒
1212
UTC格式毫秒
2323
如果不想使用UTC时间的话必须设置useUTC为false,如果只是这样还是不起作用,还需要一个步骤,那就是

Highcharts.setOptions({ 
 global: { useUTC: false  
});
这样设置的false才会起作用,同时后台传来的时间毫秒值也不加时区,即不使用UTC时间。
这样也就不会出现时间对不上的问题。

转载请注明:中国翼通 » 关于highstock横坐标的一些的一些说明(1)使用UTC时间


分享到:
已有 0 条评论