これら2つのアプローチの長所と短所は何ですか?バーがどのように飛んでいくかを制御するもの。上から下、または左から右へ?なぜbar.exit()。remove()はオプション2で動作しないのですか?あなたがここに二つの実質的に異なるアプローチを持ってこれらのアプローチの長所と短所は何ですか?
オプション1 https://jsfiddle.net/2523onr3/ オプション2 https://jsfiddle.net/sjp700/2523onr3/3/
bar.exit().remove()
svg.selectAll(".bar").remove();
PS:データ配列には常に6つのオブジェクトがあるため、あなたのケースではexitの選択に大きな違いはありません。 –
bar.exit()。remove()がオプション2で動作しない理由はまだ分かりません。両方のオプションにbar = svg.selectAll( "。bar")。data(dataset)が含まれています。フィルタ関数(d){return d.label;差をつける?両方のケースで6つのオブジェクトがあると指摘したように、値は変更されますがラベルは変更されません。 – user3359706
出口選択は、データバインディング選択の後に来なければなりません。そして、私が言ったように、出口の選択は常に空です。また、アプローチの論理を扱う一般的で理論的な答えを提供していることを念頭に置いてください...あなたの質問(「なぜこれが機能しなかったのか」)は、望ましい結果のより良い説明を必要とします変更しない?)。 –