現在のデータに応じて、d3.jsで新しい要素を追加または挿入することは可能ですか?
達成したいことを示すために例をまとめました
http://jsfiddle.net/DorjeDuck/uDBau/
基本的に、新しい赤い円は常にすべての青い円の上に描かれ、新しい青い円は常にすべての赤い円の下に置かれます。
これは、これまでのところ、データ セットをフィルタリングすることによって実現されています (d3 フィルターではなく、JavaScript 配列フィルター)。フィルター機能:
var selectNewOnesByColor = function (selection, color) {
return selection.data(data.filter(function (d) {
return d.color === color;
}), function (d) {
return d.id;
})
.enter();
}
続いて、一方のサブセットに円が追加され、もう一方のサブセットに挿入されます。これは機能しますが、これを達成するためのより直接的な方法があるかどうか疑問に思っていました。
ありがとう
マーティン