我有一些数据,我试图以特定的方式绘图: 所有节点都有办法识别它所属的组,比如说 position:L 或 position:R 。
我想将该属性考虑在一个命令中,所有“l”(左)节点位于中心节点的左侧,所有“R”(右)节点位于右侧静态中心节点(类似于图片中绘制的那样)。
以前我用过这个:
tick = function () {
nodes.forEach(function (n) {
if (n.position == "L") {
n.x -= force.alpha() * 80;
}
if (n.position == "R") {
n.x += force.alpha() * 80;
}
});
.... };
这个解决方案适用于小型套装,但是当节点达到一定数量(比如1000+)时,它就会变得非常昂贵。 我看过这两个例子: 1st one和2nd one我想知道我可以解决的问题是,在页面上结合几个力来试图“撕裂”(静态)中心节点并将不同节点拉到两侧? / p>
欢迎任何建议,谢谢。