javascript - d3.js 箭头定向图 : adding nodes/links on the fly

标签 javascript graph d3.js directed-graph

我尝试使用 this这个箭头力定向图示例(基于 d3.js)

我想动态添加节点/链接到图表,而不重新启动动画。

我不是 javascript 专家,实际上也不是 d3.js 专家,但无论我尝试做什么,我都无法创建一个动态添加更多链接的 AddLinks(links) 方法。

我能做的最好的事情就是动态添加链接,但那些链接并不知道图表其余部分的存在。

我当然知道我的问题是什么。我分别使用了“force”方法两次,但我找不到如何与已经存在的“force”接口(interface)...

最佳答案

documentation for force.start()明确表示

In addition, it should be called again whenever the nodes or links change.

因此,执行您想要的操作的方法是将链接添加到原始力布局,然后重新启动模拟。如果不重新启动,将不会考虑这些链接,并且模拟结果会看起来很奇怪。

您当然可以尝试通过在重新启动之前将节点的位置设置为当前模拟结束时的位置来使模拟看起来好像没有重新启动。

关于javascript - d3.js 箭头定向图 : adding nodes/links on the fly,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15432350/

相关文章:

javascript - 如何根据用户输入更新 D3 SVG 图表

javascript - 如何打开模态点击 SVG javascript d3

javascript - 如何修复将 JS 制作的 HTML 元素放入实际的 HTML 正文中?

JavaScript 等效于 Python 的 format() 函数?

javascript - 在 V8 JavaScript (Chrome & Node.js) 中访问行号

r - 使用 ggplot2 在同一个图上将两个变量绘制为线

在给定图中查找具有最小范围的生成树的算法

javascript - 侧面导航栏下拉菜单

javascript - D3.js v4 - 如何添加具有默认滚轮鼠标缩放行为的缩放按钮

javascript - 使用 D3 版本 4 的表中的数据加载问题