簡體   English   中英

Flot Chart工具提示錯誤 - 工具提示日期是X軸日期的一天

[英]Flot Chart Tooltip Error - Tooltip Date is One Day Behind X-Axis Date

我無法理解為什么工具提示日期已經過了一天。 我相信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);
        }
    });
  });

我希望這沒關系,但我想回答我自己的問題。 我很高興我發現了這個愚蠢的錯誤! 我正在使用Ruby on Rails收集數據並通過JSON url將其傳遞給Flot Chart。 由於服務器在UTC午夜記錄數據,因此它將數據傳遞到本地時區的工具提示,完全使其不同步。

所以,我基本上將date.getDate()和date.getMonth()更改為date.getUTCDate()和date.getUTCMonth()。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM