2017-04-10 127 views
1

我有一种情况,我的d3.nest代码不明白。这是我在Stackoverflow中的第一个问题,所以请帮助他的可怜人!d3 json嵌套数据映射,分组条形图

这里是我的代码

var nested = d3.nest() 
    .key(function(d) { return d.AREA}) 
    .key(function(d) { return d.LINE}) 
    .rollup(function(leaves) { 
    return [{ 
    key: leaves[0]['LINE_LENGTH'], 
    value: leaves[0]['avr'] 
    }, { 
    key: " ", 
    value: leaves[0]['max'] 
    }]; 
    }) 
    .entries(data); 

} 

,问题是这样的。

var lines = nested[0].values.map(function(d, i) { 
return console.log(JSON.stringify(d.key));}); 

此代码我覆盖在控制台看,它应该是 A1,A2,B1,B2,B3,C1,C2,C3,C4,C5这样 但只有本人可以看到A1, A2 这里是我的嵌套数组

[{"key":"America","values":[{"key":"A1","values":[{"key":"3M","value":"0.0002"},{"key":" ","value":"0.0002"}]},{"key":"A2","values":[{"key":"4M","value":"0.00030000000000000003"},{"key":" ","value":"0.00030000000000000003"}]}]},{"key":"EU","values":[{"key":"B1","values":[{"key":"2M","value":"0.0004"},{"key":" ","value":"0.0004"}]},{"key":"B2","values":[{"key":"2M","value":"0.0005"},{"key":" ","value":"0.0005"}]},{"key":"B3","values":[{"key":"2M","value":"0.0006000000000000001"},{"key":" ","value":"0.0006000000000000001"}]}]},{"key":"ASIA","values":[{"key":"C1","values":[{"key":"2M","value":"0.0007"},{"key":" ","value":"0.0007"}]},{"key":"C2","values":[{"key":"2M","value":"0.0008"},{"key":" ","value":"0.0008"}]},{"key":"C3","values":[{"key":"2M","value":"0.0009000000000000001"},{"key":" ","value":"0.0009000000000000001"}]},{"key":"C4","values":[{"key":"2M","value":"0.001"},{"key":" ","value":"0.001"}]},{"key":"C5","values":[{"key":"2M","value":"0.0011"},{"key":" ","value":"0.0011"}]}]}] 

回答

0

最后我自己得到了线索,

线索在这里

var lines = [];for(var i=0; i<3; i++){nested[i].values.map(function(d, i) {return lines.push(d.key); }); 

}

我是系统工程师,但公司要我制作程序。 这不是很烂但很好