d3.js强制图:过多地传播图形的链接

时间:2017-03-05 01:11:28

标签: d3.js graph

我想在力导向图中显示一组节点。这些节点几乎只有一个父子关系(几乎是一棵树)。有几个节点有很多子节点,而大多数节点都是叶子。 这产生了几个相互连接的节点"岛的结构。问题是,那些岛屿和#34;继续分散,特别是在拖动节点时。

在这里小提琴:https://jsfiddle.net/50oz3xtr/ 我在下面的块中尝试了不同的设置:

(map(JSONLines, glob(

但没有运气(力量,距离......)

我的问题是: - 我如何设置"最大长度"在链接上,图表不会传播太多? - 有没有办法设置"固定"链接的长度?

1 个答案:

答案 0 :(得分:0)

您可以做的是在模拟尝试优化的每个链接上设置“理想”长度。

为此,将距离法链接到“链接”力的末尾 - api reference

e.g。

.force("link", d3.forceLink().id(function(d) { return d.id; }).distance({x}));

您还可以将函数传递给距离方法,该方法允许您逐个链接地改变理想距离。

另外,请记住,此处有多个力作用,因此其他力可能会“干扰”您的连杆力。我会看看每个链接上的“强度”设置,并考虑使用“碰撞”力而不是许多身体。

使用每个力量的参数可以获得你所追求的结果。