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