2013-05-07 29 views
2

我有一個數據年份爲&周的列。我想創建一個基於此的日期軸。d3.js - 基於年份和星期的時間戳

當我試圖格式化的日期,它不工作

我嘗試這樣做:

var parseDate = d3.time.format("%Y-%W").parse; 

d3.csv("temperatures_groups_2.csv", function(error, data) { 
    data.forEach(function(d,i) { 
     d.timestamp = parseDate(d.timestamp); 
     alert(d.timestamp); 
     d.temperature = +d.temperature; 
    } 
}); 

我得到空警報執行時。

如果我用d3.time.format(「%Y-%m」)。parse替換它,它工作正常。它需要一個月,但不是一週不。

該CSV包含這樣

時間戳數據,溫度 2013-01,19.5 2014-02,21.5 2015-03,20.5 2016-04,20.5 2017-05,21.25

回答

1

documentation說:

以下指令尚不支持解析:

%U - 一年的週數。

%W - 一年的週數。

因此,您不能使用D3來解析這些日期。您必須自己解析日期或使用其他庫,例如moment.js

+0

非常感謝Lars。 – 2013-07-11 06:28:08

1

此功能自version 3.2documentation已更新。

  • %U - 一年中的星期數(星期日作爲一週的第一天)作爲十進制數[00,53]。
  • %W - 一年中的星期數(星期一作爲一週的第一天)作爲十進制數[00,53]。

但是,您的問題的格式將無法正常工作,因爲解析器需要指定一個特定的日期。例如。由「%a」。如果沒有日期說明符,假設星期天會很好,但那是另一個PR。

相關問題