簡體   English   中英

Flot問題中的時間圖?

[英]Time Graph in Flot issue?

我試圖用flot(每天)或可能每隔一天繪制一個月的圖表,勾選一下。

為了得到我的時間價值,我這樣做:

$date = strtotime($rowData[0]); // 2013-01-01
$myData = json_encode(array($date*1000, 1234));
// I Then echo it out as an array into the javascript var.

出於某種原因,我可以改變這一行: minTickSize: [1, day]到2(我認為每隔一個標簽標記)並且什么都不會改變。 此外,時間值也沒有顯示出來? 我究竟做錯了什么?

這是一個JSFIDDLE

這是每兩天更新一次......有渲染問題嗎? 另外,為什么10月10日是唯一顯示的日期? JSFIDDLE更新

這就是我所擁有的javascript:

var myData = [[1380603600000,0],[1380690000000,0],[1380776400000,0],[1380862800000,0],[1380949200000,0],[1381035600000,0],[1381122000000,0],[1381208400000,0],[1381294800000,0],[1381381200000,0],[1381467600000,0],[1381554000000,0],[1381640400000,1],[1381726800000,0],[1381813200000,0],[1381899600000,0],[1381986000000,0],[1382072400000,0],[1382158800000,0],[1382245200000,0],[1382331600000,0],[1382418000000,0],[1382504400000,0],[1382590800000,0],[1382677200000,0],[1382763600000,0],[1382850000000,0],[1382936400000,0],[1383022800000,0],[1383109200000,0],[1383195600000,0]];

var plot = $.plot($(".subsChart"),
   [ { data: myData, label: "myData"} ], {
   series: {
       lines: { show: true,
                lineWidth: 2,
                fill: true, fillColor: { colors: [ { opacity: 0.5 }, { opacity: 0.2 } ] }
             },
       points: { show: true, 
                 lineWidth: 2 
             },
       grow: { active: true,
                 steps: 30
             },
       shadowSize: 0
   },
   grid: { hoverable: true, 
           clickable: true, 
           tickColor: "#DDD",
           borderWidth: 1,
           borderColor: "#DDD"
         },
   colors: ["#FF0000"],
    xaxis: {mode: "time", timeformat: "%b %m", ticks: myData, minTickSize: [5, "day"]}, 
    yaxis: {ticks:3, tickDecimals: 0},
    tooltip: true,
 });

UPDATE

當我刪除ticks: myData選項時,標簽會顯示,但所有標簽都在同一天? 此外,沒有一點甚至落在日期上。

正如@Smokie建議的那樣,您需要刪除ticks選項。 當您提供刻度時,Flot會跳過它通常會執行的任何刻度生成,並使用您提供的內容,在這種情況下無效。

一旦你這樣做,你會注意到你有標簽,但它們都顯示10月10日。那是因為你的日期格式是%b(短月名)%m(月號)。 我猜你真正想要的是%b%d。

請注意,您可能不會每天都打勾,因為根據您的窗口大小,它們並不適合。 這就是為什么minTickSize是最小值而不是精確值; Flot將確保至少一天(或您指定的許多天數)分隔刻度線,但可以選擇將它們進一步展開以確保它們都適合。

暫無
暫無

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

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