【发布时间】:2013-09-30 22:20:01
【问题描述】:
我在过滤 csv 数据和更新 D3.js 中的一些 SVG 时遇到了一些问题。
问题 1
在加载时,我想从 csv 中过滤出多行。 我成功地加载了数据并过滤了一行。然后我对多行尝试了类似的方法,但这没有用。
d3.csv("sample-data.csv", function(data){
date = data.filter(function(row) {
return row['YYYYMMDD'] == '20100901';
})
period = data.filter(function(row){
for (var i = 1950; i < 2013; i++) {
return row['YYYYMMDD'] == (i +"0901");
}
});
createVis();
}
问题 2:
根据用户输入(左/右键按下)我想更改过滤的日期和期间并更新一些 SVG。
示例:
当前日期为:20100903。
用户点击右箭头键,日期更改为 YYYYMMDD 列中包含 20100904 的行,句点随之更改,就像我在问题 1 的 for 循环中一样。
我只是坚持这个,因为我不知道如何构建我的代码。
我的 csv 数据示例:
YYYYMMDD, DDVEC, FHVEC, FG
20100901, 31, 51, 57
20100902, 245, 20, 51
20100903, 279, 51, 62
20100904, 220, 36, 46
20100905, 284, 26, 41
请注意,我的 csv 最终将包含更多数据。
提前感谢您的帮助。
【问题讨论】:
-
你目前没有的东西怎么办?
-
问题 1 只返回 row['YYMMDD'] == '19500901' 的值,而不是我需要的所有 63 行。
标签: javascript csv svg d3.js