2015-03-25 22 views
0

我需要將x軸格式化爲像這樣的example。 我的代碼dygraph的xaxis中的時間格式

  axes: { 
        x: { 
        axisLabelFormatter: function(x) { 
         return moment(x,"HHmm").format("HH:mm"); 
        } 
        } 

正在逐漸失效日期在x軸縮放時。

+0

這是數據 10:59,1482,10 11:00,934,10 11:01,16,10 13:19,187,10 13:21,390,10 13:22,82, 10 13:23,296,10 – user3917953 2015-03-25 11:36:10

+0

您可以通過dygraphs.com/fiddle提供演示嗎?很難說你的問題是什麼問題。 – danvk 2015-03-25 14:43:37

+0

嗨,這裏的例子在jsfiddle而你去放大你會得到無效的日期http://jsfiddle.net/NtBPk/537/ – user3917953 2015-03-27 07:11:21

回答

0

您正遇到舍入問題。

> moment(12.6, 'HHmm').format('HH:mm') 
"12:06" 
> moment(12.600000000000001, 'HHmm').format('HH:mm') 
"Invalid date" 

根據moment docs,你應該傳遞一個字符串,而不是數字。您的號碼很可能會轉換爲字符串,然後解析爲日期,即risky business

一個直接的問題是使用moment(Math.round(x))代替moment(x),但仍然存在更深層次的問題,那就是您仍在濫用API時刻。