1

我正在使用 vis.js 来显示一些图表。问题是具有多个中心节点的布局会变得嘈杂(中心节点的邻居重叠)。类似于所附图像的布局是可取的。是否可以使用 vis.js 来实现这一点?

在此处输入图像描述

4

1 回答 1

1

看起来有一个选项可以解决您的问题(我在玩过我之前建议的physicsConfiguration之后发现了它):

物理学具有可以像这样使用的属性(在和avoidOverlap之间浮动):01

var options = {
  ...
  physics: {
    barnesHut: {
      avoidOverlap: 0.5
    },
    ...
  }
}

如果你在配置演示中尝试它,你会发现在avoidOverlap等于0的情况下,拖动和移动节点是很有可能的,这样那些重叠的边缘和网络就会保持在那个位置:

在此处输入图像描述

但是一旦我们增加这个值,节点就会开始从边缘反弹并且不能真正停留在那个位置:

在此处输入图像描述

但请注意,此选项不会阻止边缘边缘交叉,只会阻止边缘节点重叠(请参阅物理/barnesHut/avoidOverlap)。物理文档页面根本不包含“交叉”一词,并且每次出现“重叠”都是关于边缘节点的事情。

因此,这将使布局噪音更小,但不会消除交叉边缘。

于 2018-05-16T16:42:49.040 回答