0
は、私はちょうど私が色を変更することができれば、例えばD3放射状の木のハイライト・パス
https://bl.ocks.org/mbostock/4063550
マイク・ボストックにより株式ラジアルツリーのストロークのパスの色を変更に関する簡単な質問を持っています以下のようなサブリンクで:
var link = g.selectAll(".link")
.data(root.descendants().slice(1))
.enter().append("path")
.attr("class", "link")
.style("fill", "none")
.attr("d", function(d) {
return "M" + project(d.x, d.y)
+ "C" + project(d.x, (d.y + d.parent.y)/2)
+ " " + project(d.parent.x, (d.y + d.parent.y)/2)
+ " " + project(d.parent.x, d.parent.y);
});
link.attr('stroke', function(d) {
if (d.id.startsWith("Root.Item1")){
return "#386eff";
}
if (d.id.startsWith("Root.Item2")){
return "#45cbf2";
}
else return '#70f2ad';
});
これはRoot.Item2
すなわちで始まるデータのためのすべてのリンクの色を変更しますRoot.Item2.Child1とRoot.Item2.Child2
は同じ色になります。
しかし、Root.Item2.Child2のパスのみを強調表示し、他のリンクを同じ色のままにしたい場合はどうすればよいですか?
概念は、ルートで始まりChild2で終わるパスをハイライトするようなものですか?
おかげ
データオブジェクト 'd'には、' depth'プロパティを持つ 'source'プロパティが含まれている必要があります。条件付きで任意の深度を強調表示することができます。 –