ノードのサイズをそのサイズに基づいて変更したいと思います。 この例では、ズーム係数が0.5未満のノードを赤色で表示したい場合は、グループカラーを使用します。私は次のコードを試してみましたが、エラーメッセージを返します。nullはオブジェクトではありません(d3.event.transform)。 エラーコードによると、私はd3.event.transformがまだ初期化されていないと思います。ズーム時にノードスタイルを更新するには?
ノードスタイル関数内からズーム係数を取得する方法はありますか?
var node = pane.append("g")
.attr("class", "nodes")
.selectAll("circle")
.data(graph.nodes)
.enter().append("circle")
.attr("class", "node")
.attr("r", function(d) { return d.value*5 })
.style("fill", function(d) {
return (d3.event.transform.k < 0.5) ? "red": color(d.group);
});
コードスニペット、jsfiddleなどを作成してお手伝いしますか? cf. https://stackoverflow.com/help/mcve –