【发布时间】:2017-01-23 06:50:17
【问题描述】:
我正在 D3 上进行可视化,并且觉得必须有一种方法来做我想做的事情。
假设我有这样的 JSON:
var arr = [
{
"name":"John",
"maxAge": 35,
"info":[
{
"age":31,
"height":6,
"weight":155,
"eyes":"green"
},
{
"age":35,
"height":6,
"weight":165,
"eyes":"green"
}
]
},
{
"name":"Eric",
"maxAge":30,
"info":[
{
"age":29,
"height":5,
"weight":135,
"eyes":"brown"
},
{
"age":30,
"height":5,
"weight":155,
"eyes":"brown"
}
]
}
]
假设我正在使用类似这样的方式遍历数据:
var outerDiv = d3.select("body")
.selectAll("div")
.data(arr)
.enter()
.append("div")
.attr("class","outerDiv");
为 John 和 Eric 创建外部 div,然后:
var innerDivs = outerDiv.selectAll("p")
.data((d) => arr.info)
.enter()
.append("p")
.html("Weight = " + info.weight)
.attr("class","outerDiv");
遍历每个信息并将其可视化。但是,我的可视化要求 1)我可以在循环“info”时访问 maxAge,2)我可以在 info[0] 内访问 info[1].height。这些都可能吗?
【问题讨论】:
标签: javascript json d3.js nested