【发布时间】:2014-03-17 17:27:16
【问题描述】:
在这个 jsfiddle(http://jsfiddle.net/3NUJE/3/) 中,我通过传递不同的字符串来更改绑定到对象的数据键:
// Create rectangles
var rects = chart
.selectAll('rect')
.data(data, function(d) {return d + 'a'})
...
// Update data -- all should be removed
d3.selectAll('rect')
.data([5,6], function(d) { return(d + 'b'); })
.exit()
.transition()
.delay(2000)
.remove();
不幸的是,它们绑定到同一个键(即,5 和 6 不会被删除)——是否可以在不更改我传递的数据数组的情况下区分它们?
【问题讨论】:
-
我不清楚你想做什么。您希望将新数据与哪些元素匹配,即应该保留哪些
rects,删除哪些? -
在这种情况下,应该删除所有元素,因为键包含字符串'b',而不是'a'
标签: data-binding d3.js transition