我有一个包含数据年和周的专栏。我想基于此创建一个日期轴。
当我尝试格式化日期时,它无法正常工作
我试过了:
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;
}
});
警报执行时我得到null。
如果我用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
答案 0 :(得分:1)
解析时尚不支持以下指令:
%U - 一年中的周数。
%W - 一年中的周数。
因此您无法使用D3来解析这些日期。您必须自己解析日期或使用其他库,例如moment.js。
答案 1 :(得分:1)
自version 3.2 {{}}}以及documentation更新后,此方法有效。
%U
- 一年中的周数(星期日作为一周的第一天)作为十进制数[00,53]。%W
- 一年中的周数(星期一作为一周的第一天)作为十进制数[00,53]。但是,问题中的格式不起作用,因为解析器需要指定特定日期。例如。由“%a”。如果在没有日期说明符的情况下假设星期天会很好,但那是另一个PR。