有人知道D3源代码第5529行的这种随机扰动的原因吗?
if (!quad.leaf) {
quad.point.x += Math.random() - .5;
quad.point.y += Math.random() - .5;
}
答案 0 :(得分:1)
d3.js文件连接了几个源代码文件。您引用的行位于force implementation。在此文件中,您可以找到扰动的解释:
// jitter internal nodes that are coincident
if (!quad.leaf) {
quad.point.x += Math.random() - .5;
quad.point.y += Math.random() - .5;
}
随机扰动是为了处理重合节点。这个问题确实很具体,但在我看来这是一个很好的问题。