ヒストグラムなどの再利用可能なグラフの例には、次のものがあります。
// select the svg element, if it exists
var svg = d3.select(this).selectAll("svg").data([data]);
// append the svg element, if it doesn't exist
svg.enter().append("svg") ...
...ここthis
で、は現在のDOM要素であり、data
はそれにバインドされているデータです。私が理解しているように、このイディオムでは、チャート関数が最初に呼び出されたときにチャートを作成できますが、必要に応じて、後続の呼び出しに続いて「再作成」することはできません。しかし、誰かがこのイディオムを詳細に説明できますか?例えば:
- なぜ
.selectAll("svg")
使用され、使用されないの.select("svg")
ですか? .empty()
空の選択をチェックするために使用されないのはなぜですか?- 任意の単一要素配列をに渡すことはできます
.data()
か?(この配列の目的は、単に入力選択を返すことだと思います。)
助けてくれてありがとう。