我正在尝试在flot中显示日期字段:
数据:
var data = [
[parseInt(1309150800.0)*1000, 220],
[parseInt(1309064400.0)*1000, 230],
];
剧情创作:
$.plot($("#graph"), [ data ], {
grid: {
hoverable: true
},
xaxis: {
mode: "time",
timeformat: "%d.%m.%y"
},
yaxis: {
mode: "number",
tickSize: 2
},
series: {
lines: { show: true },
points: { show: true }
}
});
根据此网站http://tools.semsym.com/index.php?tool=timestamp×tamp=1309150800,时间戳是2011年6月26日晚上10:00:00。 但图表看起来像是:http://i.stack.imgur.com/NUayx.png
点有点偏。第一个应该在26,但是在25,5。我玩了一些时间戳格式化,但无法将其带到特定点。
我缺少什么?
它也显示“26.06.2011”约6次。需要什么配置才能保持1?
答案 0 :(得分:2)
确保设置minTickSize。以下是http://jsfiddle.net/hAXHq/的示例,其中我将minTickSize设置为1天并明确设置最小/最大值。您应该能够以编程方式设置自己的最小/最大值,具体取决于您的数据。
以下是代码:
var data = [
[parseInt(1309150800.0)*1000, 220],
[parseInt(1309064400.0)*1000, 230]
];
$.plot($("#placeholder"), [ data ], {
grid: {
hoverable: true
},
xaxis: {
mode: "time",
timeformat: "%d.%m.%y",
minTickSize: [1,"day"],
min: (new Date(2011,5,25)).getTime(),
max: (new Date(2011, 5, 28)).getTime()
},
yaxis: {
mode: "number",
tickSize: 2
},
series: {
lines: { show: true },
points: { show: true }
}
});