2010-01-07 80 views
8

在海軍報的日期有誰知道如何顯示在海軍報的日期基於時間戳海軍報顯示基於時間戳

<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> 
+1

嘿馬克,你有沒有解決這個問題?我有同樣的問題。 – 2010-03-13 18:13:58

+0

你究竟看到了什麼? – DNS 2012-04-30 23:58:06

回答

21

我想你需要做的是乘法時間戳(看起來像UNIX時間戳)減去1000.

Unix時間戳跟蹤時間,從1970年1月1日開始,時間總計爲秒。而javascript時間戳測量的是毫秒。所以只需乘以1000,你應該沒問題

+1

你應該接受這個,這是正確的答案。在乘以1000之後,您可能還需要減去相對於UTC的時間,例如EST是 - 18000。所以要獲得正確的時間,對我來說就是這樣; (時間戳* 1000) - 18000 – 2012-12-15 03:37:58

4

嘗試定義'timeformat'屬性,並定義flot將用來格式化毫秒值的模式。

xaxis:{ 
    mode: "time", 
    timeformat: "%M:%S" 
}, 
+0

如果你有興趣,我需要你一些jQuery任務。 – seoppc 2014-06-22 01:51:46

2

我用這個:

var options = { 
    lines: { show: true }, 
    points: { show: true }, 
    xaxis: { mode: "time", timeformat: "%m/%d/%y", minTickSize: [1, "day"]} 
}; 
0

我只是碰到了這一點,我想我們都使用了相同的不良海軍報的例子。簽名是:

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"}} 
);