flot отображать дату во flot на основе метки времени - PullRequest
9 голосов
/ 07 января 2010

Кто-нибудь знает, как отображать дату в формате flot на основе отметки времени

<script id="source" language="javascript" type="text/javascript">
$(function () {

var d1 = [
[1262818800,100],[1262732400,100],[1262646000,100],[1262559600,100],[1262473200,100],[1262386800,100],[1262300400,100],[1262214000,100],[1262127600,100],[1262041200,100],[1261954800,100],[1261868400,100],[1261782000,100],[1261695600,100],[1261609200,100],[1261522800,95],[1261436400,110],[1261350000,110],[1261263600,110],[1261177200,100];

var d2 = [
[1262818800,23],[1262732400,23],[1262646000,23],[1262559600,23],[1262473200,23],[1262386800,23],[1262300400,25],[1262214000,25],[1262127600,25],[1262041200,25],[1261954800,25],[1261868400,25],[1261782000,25],[1261695600,25],[1261609200,25],[1261522800,25],[1261436400,10],[1261350000,10],[1261263600,10],[1261177200,10]

$.plot($("#placeholder"), [{data:d1,lines:{show: true},label:"Mountain"},{data:d2,lines:{show: true},label:"Valley"}],{yaxis: {label:"cm"}},
{xaxis: {mode:"time"
}}
);

});
</script>

Ответы [ 4 ]

21 голосов
/ 07 января 2010

Полагаю, все, что вам нужно сделать, это умножить метку времени (которая выглядит как метки времени unix) на 1000.

Временная метка Unix отслеживает время как общее количество секунд, начиная с 1 января 1970 года. В то время как временные метки javascript измеряют миллисекунды. Так что просто умножьте на 1000, и все будет в порядке

4 голосов
/ 10 января 2010

Попробуйте определить атрибут timeformat и определить шаблон, который flot будет использовать для форматирования значения в миллисекундах.

xaxis:{
    mode: "time",
    timeformat: "%M:%S"
},
2 голосов
/ 01 мая 2012

Я использую это:

    var options = {
    lines: { show: true },
    points: { show: true },
    xaxis: { mode: "time",  timeformat: "%m/%d/%y",   minTickSize: [1, "day"]}
};
0 голосов
/ 13 сентября 2012

Я только что столкнулся с этим, и я думаю, что мы оба использовали один и тот же плохой пример Флота Подпись:

var plot = $.plot(placeholder, data, options)

А ваш код делает что-то вроде

var plot = $.plot(placeholder, data, xoptions, yoptions)

Итак, чтобы исправить это, просто сделайте это вместо:

$.plot(
    $("#placeholder"), 
    [{data:d1,lines:{show: true},label:"Mountain"},{data:d2,lines:{show:true},label:"Valley"}],
    {yaxis: {label:"cm"}, xaxis: {mode:"time"}}
);
...