2013-06-12 172 views
1

我试图按照各种说明(例如How to convert to D3's JSON format?)使用D3.js创建可折叠树。将CSV转换为JSON

这是我迄今所做的: http://jsfiddle.net/L3phF/6/

我使用nest()作为console.log(nest)时,有一个问题显示我只有一个空的对象,但我找不到错误。

var raw = d3.select("#csvdata").text(); 

var parsed = d3.csv.parse(raw); 

// d3.select("#parsed").text(raw); 
// d3.select("#parsed").text(JSON.stringify(parsed)); 

var data = JSON.stringify(parsed); 

var nest = d3.nest() 
    .key(function(d) { return d.subgroup; }) 
    .key(function(d) { return d.division; }) 
    .key(function(d) { return d.product; }) 
    .entries(data); 

console.log(nest); 

我很感激任何帮助!

回答

2

不要打开漂亮的对象d3.csv.parse让你回到一个字符串! d3.nest()期待一个对象,而不是一个字符串:

var nest = d3.nest() 
    .key(function(d) { return d.subgroup; }) 
    .key(function(d) { return d.division; }) 
    .key(function(d) { return d.product; }) 
    .entries(parsed); 

会给你你想要的。