【发布时间】:2014-08-06 04:51:08
【问题描述】:
我正在使用 Google Visualization API 来生成注释图表。 我从我的数据库中获取文章及其日期。日期采用字符串格式“YYYYMMDD”。
在为图表创建数据表时,我使用以下代码添加日期。
dataTable.addColumn('date', 'ArticleDate');
dataTable.addColumn('string', 'ArticleInfo');
for(i=0;i<searchResultsJSON.length;i++){
var yearValue = parseInt(searchResultsJSON[i].date.substr(0,4));
var monthValue = parseInt(searchResultsJSON[i].date.substr(4,6)) - 1;
var dayValue = parseInt(searchResultsJSON[i].date.substr(6,8));
dataTable.addRow([Date(yearValue,monthValue,dayValue),'<a class=\"tooltipLink\" onclick=\"getDoc(\''+searchResultsJSON[i].path+'\');return false;\">'+searchResultsJSON[i].title+'</a><br/\><br/\>']);
}
现在,我想知道每天的文章数,所以我对数据表运行聚合查询。
var result = google.visualization.data.group(dataTable,[0],[{'column': 0, 'aggregation': google.visualization.data.count, 'type': 'date'}]);
但是,我在这一点上遇到了日期格式错误。
Error: Type mismatch. Value Mon Jun 16 2014 13:08:20 GMT+0200 (W. Europe Daylight Time) does not match type date in column index 0
at Error (native)
这已经花费了上午的大部分时间,并且确实阻碍了进展。任何帮助都会很棒。
谢谢!
【问题讨论】:
-
substr(0,5) 不会给你 YYYYM 吗?
-
抱歉,我发布了我正在处理的代码的早期版本。我现在使用的那个有正确的子字符串索引,但问题仍然存在。
-
Date(yearValue, monthValue, dayValue)返回什么值?如果您尝试解析('08') - 请阅读stackoverflow.com/questions/17681843/…
标签: javascript json google-visualization