我理解錯了嗎?或者它應該是這樣的?d3js selection.enter()取決於添加的新數據的順序?
上點擊按鈕a原圈
d3.select("svg").selectAll('circle')
.data([{'name':'john', 'age': '50'}]).enter().append('circle')
.attr("cx", function(d){return d.age;}).attr("cy", '200').attr("r", '10').attr("fill", 'red');
以下稱爲功能
function prependValue(){
d3.select("svg").selectAll('circle')
.data([{'name':'peter', 'age': '100'}, {'name':'john', 'age': '50'} ])
.enter().append('circle').attr("cx", function(d){return d.age;}).attr("cy", '200').attr("r", '10').attr("fill", 'green');
}
我假定它應該在CX添加一個綠色圓圈彼得= 100,但是,它改變顏色約翰到綠色的圈子。
,如果我做
.data([{'name':'john', 'age': '50'}, {'name':'peter', 'age': '100'} ])
一切正常。
我很高興你得到了一個回答你的問題,但你需要投入一點更多的努力以使您的問題更understandabl e,而不依賴於其他人爲你編輯它們。特別是,您的幾個問題顯示了代碼格式問題。在Markdown編輯器上面有幫助可以解釋如何正確格式化代碼;在問你的下一個問題之前,你應該先熟悉這個過程。 –