1
我已经按照Mike Bostock中的各种示例创建了具有有向路径和节点上的图像的可折叠力布局(与this other question有关)。如何链接D3.js强制布局中的json数据的额外属性?
现在,我想链接一些额外的信息给一些节点,如果它们包含任何额外的信息,由json字符串中的数据构成。
JSON字符串,看起来像这样:
{
"name": "Somename",
"text": "Some text",
"extradata": [
{
"type": "sometype",
"icon": "someicon.png"
},
{
"type": "sometype02",
"icon": "someicon.png"
}
],
"children": [
{
"name": "Somename",
"text": "Some text",
"extradata": [
{
"type": "sometype",
"icon": "someicon.png"
},
]
},
{
"name": "Somename",
"text": "Some text",
"extradata": [
{
"type": "sometype",
"icon": "someicon.png"
},
{ .... },
{ .... },
{ .... },
....
],
"children": [
{
....
}
},
........
总之,我想显示一些extradata[]
阵列连接到每一个节点,该属性而额外的值的。最终结果如下图所示,其中蓝色圆圈表示来自额外数据的内容(例如sometype
或sometype02
)。
我无法理解如何解析JSON字符串,以获得这些价值,以及如何创建链接到他们所属的节点。
嘿克里斯,谢谢你的回答和你的榜样,但我仍然困惑!我想要做的只是将extradata的元素显示为链接到其父项的附加节点(所以在上图中,两个蓝色圆圈将是“sometype”和“sometype02”)。我几乎通过再次浏览嵌套选择教程并查看示例来实现它。基本上,我通过使用'.each'解析extradata的元素,并将每个元素当作一个新节点。但是,我无法获得正确的位置和“力”,因此所有这些新节点都处于彼此之上...... – djjupa 2013-05-11 18:13:22