【发布时间】:2019-06-20 09:37:32
【问题描述】:
我有一个可以有 0 个或多个基本节点的网络,其中有 0 个或多个节点相互连接。问题是,当我有连接到侧面的节点时,这似乎会导致该方向的速度,进而导致网络旋转。
我怎样才能停止这种旋转?并不是因为网络渲染节点的方式问题,而是向对方添加节点那么简单。
下面的 Gif 显示了悬挂在导致旋转的两侧的节点(忽略红色节点,它们与问题无关)。网络将向这些相反的方向旋转节点。
Vis.js 选项:
var options = {
interaction: {
hover: true
},
physics: {
forceAtlas2Based: {
gravitationalConstant: -50,
springLength: 100,
avoidOverlap: 1,
damping: 1
},
minVelocity: 0.75,
solver: 'forceAtlas2Based'
}
【问题讨论】:
-
网络可视化为什么需要重力模拟?
-
@Andrey 您指的是选项中的“引力常数”吗?如果是这样,则需要将节点拉得更近(或将它们推开)。当我删除它时,问题仍然存在
-
我的意思是我不理解物理学在这么简单的事情上的用法。无论如何,你有没有尝试过物理中的
stabilization选项? -
@Andrey 节点在用户查看网络期间的任何时候动态添加和删除。当启用物理并且发生这种情况时,不会说谎 - 它看起来很酷:) 我已经尝试过稳定化,不幸的是我对这些选项所做的任何更改都无济于事。
network.stabilize()也无法解决旋转问题,因为它不会重绘节点(例如在另一侧)。也许是我正在使用的求解器
标签: javascript vis.js vis.js-network