【问题标题】:Google Charts API datetime unix format?Google Charts API 日期时间 unix 格式?
【发布时间】:2011-05-27 22:15:19
【问题描述】:

我很难让 Google 图表理解日期时间格式。我使用了一个示例 [1],其中 datetime 格式设置为简单的月日和年,但我将其更改为采用 datetime 类型的输入。以下页面提供了一个示例:

http://www.sccs.swarthmore.edu/users/09/leo/cgi-bin/viewer.php

代码开头如下:

data.addColumn('datetime', 'Date');
data.addColumn('number', 'Active or not');      
data.addRows(1768);
data.setValue(0, 0, new Date(1306192258));
data.setValue(0, 1, 1);

为什么 Google 会将日期格式更改为 1970 年 1 月 15 日? (纪元时间开始?)

谢谢!

[1]http://www.beakkon.com/geek/how-to/create-interactive-charts-using-google-charts-api

【问题讨论】:

    标签: javascript google-api google-visualization


    【解决方案1】:

    试试这个:

    data.addColumn('datetime', 'Date');
    data.addColumn('number', 'Active or not');      
    data.addRows(1768);
    var d = new Date();
    d.setTime(1306192258*1000);
    data.setValue(0, 0, d);
    data.setValue(0, 1, 1);
    

    【讨论】:

    • 您能否添加一个简短的解释,为什么将数字乘以 1000 会解决这个问题?是秒还是毫秒的问题?
    • 没关系,我发现javascript函数 setTime() 使用毫秒,谢谢!
    【解决方案2】:

    有关 Javascript 日期函数的更多信息可以在 w3schools.com 网站上找到 我发现 - new Date("July 21, 2011 02:00:00") 是我想做的一个很好的折衷方案。

    我的代码片段

    data.addRows([
    [new Date("July 21, 2011 00:00:00"), 0.319636363636 ],
    [new Date("July 21, 2011 07:00:00"), 0.319636363636 ],
    [new Date("July 21, 2011 22:00:00"), 0.319636363636 ],
    [new Date("July 21, 2011 23:00:00"), 0.319636363636 ],
    [new Date("July 22, 2011 09:00:00"), 0.319636363636 ],
    [new Date("July 22, 2011 10:00:00"), 0.319636363636 ]
    ]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-15
      • 2012-01-03
      • 2013-05-17
      • 1970-01-01
      • 2015-09-20
      • 1970-01-01
      • 2012-02-05
      • 2012-03-06
      相关资源
      最近更新 更多