2014-10-28 87 views
2

使用JSON電話後,我能格式化數據集返回 [「2009年7月12日12:34:56,100」],但dygraphs單證說Dygraph日期繪製了JSON

[新日期(「2009/07/12」),100](摘自here

這非常不幸,我不能發送日期對象,因爲會自動轉換。我正在處理大約200萬個數據,並且對於循環來說非常緩慢[新日期('2009/07/12 12:34:56),100'] 200萬次。 如果直接從JSON調用中獲得,效率會更高。

無論如何,沒有客戶端修改繪製日期?/直接從JSON調用?

回答

5

您無法將日期作爲JSON傳輸,因爲它們是JSON規範中的not supported

另一種方法是從時代開始傳輸毫秒數,這是dygraphs在內部表示這些值的方式。如果您這樣做,您將不得不手動設置各種x軸選項。見this fiddle

g = new Dygraph(document.getElementById('graph'), 
    [[1247382000000, 10], 
    [1247468400000, 20], 
    [1247554800000, 30]], 
    { 
     labels: ['Date', 'Value'], 
     axes: { 
      x: { 
       valueFormatter: Dygraph.dateString_, 
       axisLabelFormatter: Dygraph.dateAxisFormatter, 
       ticker: Dygraph.dateTicker 
      } 
     } 
    }); 
+0

小提琴有關係嗎? – Aaron 2014-10-28 20:52:40

+0

哎呦!修復了鏈接。 – danvk 2014-10-28 20:56:08

+1

它的工作,只是想出了從時代轉換到毫秒的方式。編輯 - 完美!表現瘋狂地增加了。謝謝。 – Aaron 2014-10-28 21:04:17