1
D3折りたたみツリーをhere としており、ノード間に何らかのパスを描きたいと思います。問題は、ツリーブランチが折りたたまれている場合、古いパスは削除されないということです。同様の解決策はhereですが、私は何か間違っています。 SVGパスをどのように更新するべきかアドバイスしてください。ツリーの上にSVGパスを描画します。
のinitのコードに、パス更新:
var path = svg.selectAll('path.sce').data(nodes);
path.attr('d', lineFunction(nodes))
.style('stroke-width', 2)
.style('stroke', 'black')
.attr('class', 'arrow')
.attr('fill', 'none')
.attr('marker-end', 'url(#arrow)');
path.enter().append('svg:path').attr('d', lineFunction(nodes))
.style('stroke-width', 2)
.style('stroke', 'black')
.attr('class', 'arrow')
.attr('fill', 'none')
.attr('marker-end', 'url(#arrow)');
path.exit().remove();
完全なコードを - jsfiddle