2016-11-01 157 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,似乎并不在你的榜样工作。