使用D3.js版本4设置重心

使用D3.js版本4设置重心,d3.js,D3.js,我正在尝试使用D3.js版本4创建一个类似的应用程序 以下是我的模拟中使用的力: svg.on('mousemove', function() { let p1 = d3.mouse(this); root.x = p1[0]; root.y = p1[1]; simulation.restart(); }); simulation .force('charge_force',

我正在尝试使用D3.js版本4创建一个类似的应用程序

以下是我的模拟中使用的力:

    svg.on('mousemove', function() {
        let p1 = d3.mouse(this);
        root.x = p1[0];
        root.y = p1[1];
        simulation.restart();
    });
    simulation
            .force('charge_force',
                d3.forceManyBody()
            )
            .force('center_force',
                d3.forceCenter(480, 300)
            )
            .force('x_force', d3.forceX(960).strength(0.5))
            .force('y_force', d3.forceY(600).strength(0.5))
            .force('collide', d3.forceCollide(10).strength(1)
                .radius((d, i) => { return i ? d.radius : d.radius + 100; })
    );
我遇到的问题是,被排斥的点永远不会回到中心。请看下面我的截图

在第一张图片中,所有的点都围绕着重心。在我移动鼠标后,点会到处排斥,不会返回到其原始位置


我错过了什么?非常感谢您的帮助

问题在我更改后得到解决

simulation.restart()

作为


simulation.alpha(1).restart()

问题在我更改后得到解决

simulation.restart()

作为

simulation.alpha(1).restart()