连接的节点与其他边或节点重叠

时间:2016-02-16 11:57:58

标签: vis.js vis.js-network

我正在使用vis.js来显示节点,并非所有节点都相互连接,但是它们是重叠的,如图所示,有没有办法选择避免这种情况,我经历了配置选项但找不到。

enter image description here

4 个答案:

答案 0 :(得分:7)

在像BarnesHut这样的物理学中有一个属性avoidOverlap = [0,1] http://visjs.org/docs/network/physics.html?#

你可以在物理http://visjs.org/examples/network/other/configuration.html

下面的底部试试

喜欢将此属性添加到物理选项

var options = {
 ... "physics": {
    "barnesHut": {
      "avoidOverlap": 1
    },
  }
}

答案 1 :(得分:3)

我设法使用configure选项让它工作:

configure: {
        enabled: true,
        showButton: true
}

这将显示一个配置所有选项的模式,直到图形看起来不错。

在我的分层视图中,我不得不禁用物理并设置如下布局:

layout: {
  hierarchical: {
    enabled: true,
    nodeSpacing: 425,
    blockShifting: false,
    edgeMinimization: false,
    sortMethod: "directed"
  }
}

答案 2 :(得分:1)

我建议使用物理和布局的手动配置:

configure: {
  enabled: true,
  filter: 'physics, layout',
  showButton: true
}

并试着玩 nodeDistance nodeSpacing

答案 3 :(得分:0)

对此我尝试了很多选择,发现实际上它取决于物理配置: 如果您的物理配置是这样的

物理学:错误,那么你可以使用这个 布局:{ 分层的:{ 级别分隔:150, treeSpacing:200, blockShifting:是的, edgeMinimization:是, parentCentralization:正确, 方向:“ UD”, nodeSpacing:300, sortMethod:“ directed” // directed,hubsize } }

其中nodeSpacing是您的关键,而sord方法将为您定义结构 这样构成了一个网络: enter image description here

否则请使用手动配置:

配置:{ 已启用:true, 过滤器:“物理,布局”, showButton:true }