【发布时间】:2013-11-03 23:52:24
【问题描述】:
我目前正在使用 dc.js、crossfilter.js 和 d3.js 来呈现一些可视化。我遇到了一个与我在Crossfilter query 和d3 csv data loading 寻找的帖子非常相似的帖子。
我的目标是解析我的 csv,并对于某个列,将其解析为每个对象行中的数组。例如,我有:
我的数据目前显示为:
[
{FY: 2011, proj_name: "project 1", category: "fruit", subcategory: "strawberry, mango", total: 1510},
{FY: 2011, proj_name: "project 2", category: "fruit", subcategory: "orange, mango", total: 100},
{FY: 2011, proj_name: "project 2", category: "vegetable", subcategory: "celery", total: 100}
]
但我希望将数据格式化为:
[
{FY: 2011, proj_name: "project 1", category: "fruit", subcategory: ["strawberry", "mango"], total: 1510},
{FY: 2011, proj_name: "project 1", category: "fruit", subcategory: ["orange", "mango"], total: 100},
{FY: 2011, proj_name: "project 1", category: "vegetable", subcategory: ["celery"], total: 100}
]
这是我可以放入 data.forEach(function (d)) 的东西吗?
d3.csv("data.csv", function(data) {
data.forEach(function (d) {
d.FY = +d.FY;
d.total = +d.total;
d.subcategory = d.subcategory.split(/,/);
})
})
我认为这是不正确的,它根本不起作用,但我在这里得到的是,这是需要在本专栏中重复完成的事情,以便我以后可以将子类别作为标签存储on.. 有什么想法/反馈吗?
在此先感谢
【问题讨论】:
标签: javascript csv d3.js dc.js