Jak narysować zakres dat na osi X na wykresach Flot?
Używam wykresów Flot do wyświetlania danych przez pewien okres (do wyboru przez użytkownika, np. Ostatnie 30 dni, ostatnie 7 dni, od 1 stycznia 2013 r. Do 3 marca 2013 r. Itd.)
Chcę więc wyświetlić wykres liniowy z osią x jako datą.
Na przykład. jeśli mam dwa dni, startDate i endDate, w jaki sposób sprawić, aby oś X wyświetlała coś takiego:
1 stycznia 2013 r. | 2 stycznia 2013 r. ........................ 3 marca 2013 r
Mój kod jest następujący: Dane (obecnie są statyczne).
var mydata = [
[1, 2.4],
[2, 3.4 ],
[3, 4.5 ],
[4, 5 ],
[5, 5],
[6, 5],
[7, 2 ],
[8, 1 ],
[9, 1.5 ],
[10, 2.5 ],
[11, 3.5],
[12, 4 ],
[13, 4 ],
[14, 2.4],
[15, 3.4 ],
[16, 4.5 ],
[17, 5 ],
[18, 5],
[19, 5],
[20, 2 ],
[21, 1 ],
[22, 1.5 ],
[23, 2.5 ],
[24, 3.5],
[25, 4 ],
[26, 4 ],
[27, 2.5 ],
[28, 3.5],
[29, 4 ],
[30, 4 ],
];
var plot = $.plot($("#mychart"), [{
data: mydata,
label: "Y-axis label"
}], {
series: {
lines: {
show: true
},
points: {
show: true
},
shadowSize: 2
},
grid: {
hoverable: true,
clickable: true
},
colors: ["#37b7f3", "#d12610", "#52e136"],
xaxis: {
mode: "time", timeformat: "%d/%m/%y", minTickSize: [1, "day"]
},
yaxis: {
ticks: 11,
tickDecimals: 0,
min:0, max: 5
}
});
Zdaję sobie sprawę, że muszę sprawić, aby mydata wyglądało jak [data, wartość]. Czy to będzie działało? Mam dane dynamicznie generowane przez serwer w JSON w
[{data, wartość}, {data, wartość} ...]
format. Prowadź.