当我尝试使用解析来定义时间格式时,日期数据为空

时间:2016-06-16 18:29:07

标签: javascript date d3.js datetime-format

我无法在d.date中阅读日期。这是我的代码。

  var parseDate = d3.time.format("%e/%_m/%Y %H");

    // Get the data
    d3.csv("../datasets/Book1.csv", function(error, data) {
        data.forEach(function (d) {
            d.date = parseDate.parse(d.dateHour);
            d.estPressure = +d.x_inf;
            d.lowPressure = +d.m1std;
            d.upPressure = +d.p1std;
        });
    console.log(data);

这是我的csv数据看起来像

tHour,x_inf,p1std,m1std,dateHour

1,10,10.3,9.2,1 / 5/2000 00

2,12,16.8,7.2,1 / 5/2016 01

3,14,21.2,6.8,1 / 5/2016 02

4,15,19.8,10.2,1 / 5/2016 03

5,14.5,16.9,12.1,1 / 5/2016 04

6,18,22.96,13.04,1 / 5/2016 05

7,18.76666667,24.04666667,13.48666667,1 / 5/2016 06

8,20.15238095,25.75238095,14.55238095,1 / 5/2016 07

9,21.53809524,27.45809524,15.61809524,1 / 5/2016 08

10,22.92380952,29.16380952,16.68380952,1 / 5/2016 2016

11,24.30952381,30.86952381,17.74952381,1 / 5/2016 10

12,25.6952381,32.5752381,18.8152381,1 / 5/2016 11

13,27.08095238,34.28095238,19.88095238,1 / 5/2016 12

14,28.46666667,35.98666667,20.94666667,1 / 5/2016 13

15,29.85238095,37.69238095,22.01238095,1 / 5/2016 14

我不知道我是否定义了错误的格式。任何人都可以帮助我吗?谢谢!

1 个答案:

答案 0 :(得分:1)

%_是空格填充的。见doc。 请改用%-



var dates = [
  '1/5/2016 00',
  '1/5/2016 01'
];
var parseDate = d3.time.format("%-d/%-m/%Y %H");

dates.forEach(function(d) {
  console.log(parseDate.parse(d));
})

<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>
&#13;
&#13;
&#13;