簡體   English   中英

jQuery-使用Flot Charts從PHP繪制時間序列數據

[英]JQuery - plot time series data from php using Flot Charts

我從使用php格式化的數據庫中獲取數據,並作為Ajax調用的JSON響應返回。 一切正常,並繪制數據。 但是,如果X軸包含日期,則不會繪制任何內容。 我使用Ajax提交開始日期和結束日期。 這是我生成的數據作為響應:

[
  {
    "data": [
      [
        "2014-11-02",
        5
      ],
      [
        "2014-11-04",
        12
      ],
      [
        "2014-11-07",
        2
      ],
      [
        "2014-11-13",
        21
      ]
    ],
    "label": "Label1",
    "color": 8
  }
]

我的x軸:

xaxes : [ {
            mode : "time",
            timeformat : "%y-%m-%d",
            color : "black",
            axisLabel : "Date",
            axisLabelUseCanvas : true,
            axisLabelFontSizePixels : 12,
            axisLabelFontFamily : 'Verdana, Arial',
            axisLabelPadding : 10
        }],

我遵循了該教程: http : //www.jqueryflottutorial.com/how-to-make-jquery-flot-time-series-chart.html,但是在使用來自ajax響應的數據時無法弄清楚該如何做。

另外,如何自動根據開始和結束日期對刻度進行划分?

JSON中的日期必須是flot在時間模式下期望的Date對象。 所以以下為我工作:(將字符串date轉換為Date對象,然后傳遞給flot):

var graph_json = $.parseJSON(data);

var j, i;
for(j=0;j<graph_json.length;j++){
    for(i=0;i<graph_json[j].data.length;i++){
        graph_json[j].data[i][0] = new Date(graph_json[j].data[i][0]);
    }
}

請參閱上面的評論。 乍一看,您似乎需要將此屬性添加到xaxis對象中:

timeformat:"%y/%m/%d"

暫無
暫無

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

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