我有一个csv数据文件,看起来像这样
root,y,i,5 root,c,b,a,7 root,c,b,z,2
我想生成类似于flare.json数据文件的内容,如下所示:
{ "name": "root", "children": [ { "name": "y", "children": [ { "name": "i", "value": 5 } ] }, { name: "c", "children": [ { "name": "b", "children": [ { "name": "a", "value": 7 }, { "name": "z", "value": 2 } ] } ] } ] }
我见过其他人解决[类似问题](Create hierarchy from csv in d3.js,但数据甚至是每个csv行都有n
个元素。我的长度不同{{1 }}
有人可以帮忙吗?
答案 0 :(得分:4)
我会使用d3 nest函数来完成此任务。您可以在此处找到有关如何使用它的文档:http://bl.ocks.org/phoebebright/raw/3176159/
解决方案看起来像这样:
var nested_data = d3.nest()
.key(function(d) { return d[0]; })
.key(function(d) { return d[1]; })
.entries(csv_data);