避免d3.js圈重叠

use*_*791 21 d3.js force-layout

你可以在这个bl.ock http://bl.ocks.org/3012590中看到巴黎有许多地理参考点,小圈子上面有一个大圆圈:

在此输入图像描述

我想得到类似于http://vallandingham.me/vis/gates/的东西,这样圆圈就会被它的边界紧密附加.

在此输入图像描述

对不起,我在这段代码中找不到答案,我想错了.

是否有一个简单的解决方案来获得它?尝试了不同的负电荷力,如果圆形尺寸发生变化会导致问题(如果巴黎的所有圆圈都变得很小,那么它们会相互走得太远)?

mbo*_*ock 43

如果您的目标是防止重叠,那么检测碰撞是满足该约束的更直接的方式.这将产生比排斥电荷力更精确的结果.这是另一个例子:

您不需要强制布局来实现此目的,尽管这两者通常一起使用.您可以在节点上迭代固定次数以解决初始化时的任何冲突.以下是我的一次谈话的实施:

  • 第二个链接仍然存在吗?在哪里可以找到? (2认同)