d3多焦点布局中簇之间的距离

时间:2015-05-11 11:04:49

标签: javascript d3.js

我试图理解这个多焦点布局的例子......

http://bl.ocks.org/mbostock/1804919

它包含一个“填充”变量(它定义了每个簇中节点之间的距离),但我真的很难看到簇之间距离的定义来自哪里 - 重力和电荷的组合可能?!

例如,如果你想将群集之间的距离加倍,你怎么能实现呢?我在示例中使用可自定义的值无效,所以非常感谢任何人的帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

m设置为较小的值会增加群集之间的距离。这是原始比例domain的{​​{1}},用于初始化节点数组元素的cx值。
将他们xcx称为有点令人困惑,因为它们不是圈子的cycx属性。
每个节点的cy值是通过将一个随机整数输入序数比例cx来确定的。x语句。 通过每个刻度(动画帧)调用cx: x(i),将圆圈移向焦点。这在以下声明中完成......

gravity
调用d.x += (d.cx - d.x)*alpha 时,alpha函数中的{p> tick固定为0.5,但还有另一个gravity也可以使用。它是由alpha对象维护的变量,在第一个滴答之前初始设置为0.1,每个滴答减少1%。它作为force传递给tick函数,因此您也可以尝试将此值传递给gravity函数而不是常量0.5。效果将导致节点逐渐“冷却”,直到它们停止为止。