У меня есть небольшая проблема с плагином Flot при отображении ярлыков xaxis на графике. Они 'mode: "time"'
. В настоящее время я использую Flot с функцией всплывающей подсказки, а всплывающая подсказка содержит дату и время.
Я поставляю JSON в плагин, который содержит отметки времени. Впоследствии я конвертирую временную метку, и я показываю ее в подсказке. Проблема заключается в том, что при отображении данных на графике времена из всплывающих подсказок не соответствуют ярлыкам xaxis, генерируемым плагином из-за разницы между часовыми поясами. Мои отметки JSON составляют +2 GMT, но ярлыки xaxis в Flot +0 GMT. Поэтому я задаюсь вопросом, есть ли возможность установить смещение в часовом поясе или что-то подобное.
Мой JSON (сгенерированный AJAX)
[1300087800000,29],
[1300088700000,39],
[1300089600000,46],
[1300090500000,53],
[1300091400000,68],
[1300092300000,95],
...
Моя функция подсказки
$(placeholder).bind("plothover", function (event, pos, item) {
$("#tooltip").remove();
var x = item.datapoint[0].toFixed(2);
var y = item.datapoint[1].toFixed(2);
var currDate = new Date(Math.floor(x));
var hour = currDate.getHours();
var minute = String("") + currDate.getMinutes();
var tooltip = hour + ":" +
((minute.length < 2) ? "0" + minute : minute) + " " +
(Math.round(y * 100)/100) + "Wh"
showTooltip(item.pageX, item.pageY, tooltip);
});
Параметры флота
var plotOptions = {
lines: { show: true, lineWidth: 1 },
points: { show: false, symbol: "cross" },
xaxis: {
mode: "time",
tickLength: 5,
timeZoneOffset: (new Date()).getTimezoneOffset()
},
selection: { mode: "x", color: "#BCBCBC" },
grid: { hoverable: true, clickable: false }
};
но, к сожалению, timeZoneOffset
не работает, и у меня все еще есть различия между xaxis и всплывающими подсказками.
Есть ли у вас идеи, как я должен решить свою проблему?