我无法理解为什么工具提示日期已经过了一天.我相信x轴是正确的,我一直在玩它,但这是在扼杀我.
我怎样才能解决这个问题?
我将一个JSON从一个URL端点传递给变量jsonDataUrl.这是一个示例数据点:[{date: "2013-01-01", value: 50}]
而cssSelector只是占位符.
这是我的代码:
$.getJSON(jsonDataUrl, function(res) {
var data = [];
$.each(res, function(i, entry){
data.push( [new Date(entry["date"]), entry["value"]] );
});
var opts = { yaxis: { min: 0},
xaxis: { mode: "time", timeformat: "%m-%d"},
series: { lines: { show: true }, points: { show: true } },
grid: {hoverable: true, clickable: true}
};
$.plot($(cssSelector), [data], opts);
$(cssSelector).bind("plotclick", function(event, pos, item) {
if (item) {
var x = parseInt(item.datapoint[0]),
y = item.datapoint[1];
var date = (new Date(x));
var day = date.getDate();
var month = date.getMonth() + 1;
var formattedDate = month + "-" + day;
$("#tooltip").remove();
var label = "date: " + formattedDate + "<br/> count: " + y;
showTooltip(item.pageX, item.pageY, label);
}
});
});
Run Code Online (Sandbox Code Playgroud)
我希望这没问题,但我想回答我自己的问题。我很高兴我发现了这个愚蠢的错误!我使用 Ruby on Rails 收集数据并通过 JSON url 将其传递到 Flot Chart。由于服务器在 UTC 午夜记录数据,因此它在本地时区将数据传递到工具提示,从而完全不同步。
所以,我基本上将 date.getDate() 和 date.getMonth() 更改为 date.getUTCDate() 和 date.getUTCMonth()。
| 归档时间: |
|
| 查看次数: |
1243 次 |
| 最近记录: |