根據當前數據,d3.js中是否可以追加或插入新元素?D3.js - 根據當前數據添加或插入元素
我把一個例子,共同展示我要實現
http://jsfiddle.net/DorjeDuck/uDBau/
基本上新的紅色圓圈什麼總是在所有的藍色圓圈和新的藍色的始終把下面的所有紅色的頂部繪製。
這到目前爲止通過過濾數據集(JavaScript數組過濾器,而不是d3過濾器)來實現。過濾器功能:
var selectNewOnesByColor = function (selection, color) {
return selection.data(data.filter(function (d) {
return d.color === color;
}), function (d) {
return d.id;
})
.enter();
}
隨後爲這一個子集添加圓圈並插入另一個子集。雖然這個工作,我想知道是否有一個更直接的方式來實現這一點。
感謝
馬丁
偉大的,感謝斯科特的答案和鏈接。正如邁克本人在討論中所說的那樣,「預過濾是要走的路」,不需要進一步思考它,我認爲......再次感謝 – dorjeduck