【发布时间】:2017-01-15 16:47:13
【问题描述】:
我正在尝试编写自己的函数来衡量 d3 v4 Force 有向图的链接。
默认强度函数是here,根据readme,可以通过传递一个新函数作为参数来更改它。 (请注意,readme 中的函数与实际代码中的函数略有不同)。
这是我想要工作的代码部分:
var simulation = d3.forceSimulation()
.force("link", d3.forceLink()
.distance(60)
.id(function (d) { return d.name;})
.strength( function (link) {/* my code here */}))
我已尝试将评论替换为默认评论:
function (link) { return 1 / Math.min(count[link.source.index],
count[link.target.index]); }
没有成功。
【问题讨论】:
-
count无法从提供给.strength()的回调中访问。此变量由d3.forceLink()在内部使用,但未公开。它可能有助于指定您希望通过代码实现的目标,以帮助您找到手头的解决方案。 -
是的,我意识到有点晚了...我能够使它与
1 / Math.min(d.source.size, d.target.size)一起工作,因为我的节点有一个size属性来替换该计数。感谢您的回答
标签: d3.js graph hyperlink force-layout