raio de atualização da força d3 de forceCollide após inicializar o gráfico
Esta pergunta é um acompanhamento de uma pergunta anterior intitulada "D3-Force atualizando parâmetros após inicializar o gráfico" (D3-Force atualizando parâmetros após inicializar o gráfico) e que @altocumulus respondeu.
Estou tentando atualizar as forças da simulação depois de modificar o raio de alguns nós. No entanto, quando eu chamoforceCollide
para explicar as alterações, ele não funciona.
O gráfico inicia primeiro corretamente, usandoforceCollide
e uma função para que a força corresponda ao raio:
var forceCollide = d3.forceCollide()
.radius(function(d){return d.radius;})
.iterations(2)
.strength(0.95);
var simulation = d3.forceSimulation()
.velocityDecay(velocityDecay)
.force("collide", forceCollide);
Eu então modifico od.radius
objeto e querforceCollide
para refletir as mudanças. No entanto, quando ligo para oforceCollide
novamente não funciona:
forceCollide.radius(function(d){
d.radius;})
Alguma idéia de por que isso está acontecendo?