在力图布局上将节点分为两组(左侧和右侧)

时间:2015-06-17 06:20:24

标签: d3.js force-layout

我有一些数据,我试图以特定的方式绘图: 所有节点都有办法识别它所属的组,比如说 position:L position:R

我想将该属性考虑在一个命令中,所有“l”(左)节点位于中心节点的左侧,所有“R”(右)节点位于右侧静态中心节点(类似于图片enter image description here中绘制的那样)。

以前我用过这个:

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 one2nd one我想知道我可以解决的问题是,在页面上结合几个力来试图“撕裂”(静态)中心节点并将不同节点拉到两侧? / p>

欢迎任何建议,谢谢。

0 个答案:

没有答案