2016-11-01 159 views
0

我目前正在使用D3.js及其強制圖形佈局。我正努力讓節點正確定位,它們似乎重疊,我希望每個子節點之間有明顯的差距。d3強制佈局 - 定位節點

我有什麼我目前的工作進展情況看起來與代碼(幾乎直接從D3的例子,但具有較大的半徑取)

https://jsbin.com/pajopizawi/edit?html,output

什麼我做錯了這樣的例子正在使子節點重疊?

+0

您可以通過增加* negative *電荷來增加節點之間的排斥力。 「-600」的值似乎表現不錯。 – altocumulus

+0

當你使用'子節點'時,我想可能問題在於你使用的是一個強制定向圖,它不能保證節點重疊,當其中一個d3樹佈局是更好的選擇時。它們旨在爲每個節點提供自己的空間。如果你的結構是一棵樹,那就試試看。 – mgraham

+0

@mrgraham我完全同意,但我希望能夠拖動隔離連接併產生innertia效果。 – Udders

回答

0

我知道我遲到了,但是這不是什麼「forceCollide」是。我將節點的半徑設置爲6,而forceCollide 16似乎可以很好地分開。

.force("collide", d3.forceCollide(16));

雖然這是V4,似乎並不在你的榜樣工作。