【发布时间】:2016-12-14 09:03:11
【问题描述】:
美好的一天,我是 d3/javascript 的新手,这可能是一个简单/重复的问题,但我无法让我的这部分代码工作..
我这里有这个 json 数组:
var myArray = [{"id": "red", "value":"1"},
{"id": "orange", "value":"2"},
{"id": "yellow", "value":"3"},
{"id": "green", "value":"1"},
{"id": "blue", "value":"1"},
{"id": "violet", "value":"3"}];
我知道要在 D3 中的节点之间创建链接,我需要一个具有 [{"source": "___", "target": "___"} 结构的数组。
是否有人能够指导我根据它们的值链接上述数组项(即节点图会将具有相同值的所有节点链接在一起)?
我现在想到的一个解决方案是手动迭代并使用 for..if.. 循环创建链接,但是如果我有很多节点(>1000?),这将迭代很多次,并且会沿途创建重复项.
这是所需输出的图片:
【问题讨论】:
-
它们如何链接在一起?
value是否被用来以某种方式链接它们? -
Yes :) 例如,在图中,“Red”、“Green”、“Blue”节点是链接的,“Yellow”、“Violet”也是链接的!我会用图片编辑 :) 但它是硬编码的,虽然哈哈..
-
啊,明白了,所以
value就像一个分组 ID -
是的 :) 也附上了一张图片!
标签: javascript d3.js nodes