【发布时间】:2018-01-08 18:30:13
【问题描述】:
所以我在 d3 中遇到了一个问题。我有这个 JSON 文件
{
"nodes": [
{"container": "Container 1", "x" : 0, "y" : 0, "px" : 0, "py": 0, "col" : 1, "row" : 0, "height" : 100, "width" : 100},
{"container": "Container 2", "x" : 100, "y" : 0, "px" : 0, "py": 0, "col" : 1, "row" : 0, "height" : 100, "width" : 100}]
}
我使元素对应于 JSON 中节点的长度。在每个元素内部,都会有一个元素对应于上面描述的容器 1 的数据,依此类推,另一个元素对应于容器 2。
我想要的文件框架是:
<svg>
<g>
<rect>Container 1</rect>
</g>
<g>
<rect>Container 2></rect>
</g>
</svg>
我迷路的地方就是这个
gCode.append("rect").data(graph.nodes)
.enter()
.attr('class', 'blob')
.style("border", "20px solid")
因为我不知道 JSON 文件的大小,我想知道在生成 g 元素时,第一个元素是否会对应于容器 1,然后以此类推。
我尝试过的事情
我正在实现一个 forEach 函数,但被建议不要这样做,因为它稍后会出现问题,我怀疑这里可能是同样的情况。
【问题讨论】:
标签: javascript json d3.js svg