也许在我们使用jquery flot时遇到了x轴的日期对应不上的问题
这是由于jquery flot插件的时间换算为utc的比我们的正常得到的时间小了8个小时,所有我们在用java构建数据的时侯,在转换时间为毫秒时要相应的加下8个小时的时差如下
private Map<String, IfengTjVo> onlineIfengCount(List<OnlineDay> list) {
IfengTjVo tjB = new IfengTjVo();
tjB.setLabel("在线人数");
for (OnlineDay vo : list) {
long l = 0;
try {
l = sdf.parse(sdf.format(vo.getDay())).getTime();
l = l + 8*60*60*1000;
}
catch (ParseException e) {
e.printStackTrace();
}
Object[] arrB = {l, vo.getCountPeople()};
tjB.getData().add(arrB);
}
Map<String, IfengTjVo> mapTemp = new LinkedHashMap<String, IfengTjVo>();
mapTemp.put("flot_name_b", tjB);
return mapTemp;
}
?
这样得到的时间就是正确的了
?
1 楼
lee1177
2012-06-20
8小时的问题你可以转化的
xaxis: {
mode: "time",
timeformat: "%H:%M:%S",
tickFormatter: function (val, axis) {
var d = new Date(val);
return d.toLocaleTimeString();
}
}