0
D3的过渡,我来到这里表明我在D3中创建一个排序热图:http://bl.ocks.org/umcrcooke/5703304难度与排序热图
当我点击年(列)的初始排序/过渡效果很好,但随后的点击度假胜地,但没有过渡。我在排除故障时遇到了问题。过渡的代码如下:
我已经设定,使得点击该列文本时更新函数执行:
.on("click", function(d,i) { return d3.transition().each(update(d));});
而且更新功能的相关作品是:
function update(year) {
grid.selectAll('rect')
.transition()
.duration(2500)
.attr("y", function(d) { return (sortOrder[year].indexOf(d.Country))*cell.height; })
grid.selectAll(".cell_label")
.transition()
.duration(2500)
.attr("y", function(d) { return (sortOrder[year].indexOf(d.Country))*cell.height + (cell.height-cell.border)/2; })
d3.selectAll(".row_label")
.sort(function(a, b) {
return d3.ascending(+a[year], +b[year]);
})
.transition()
.duration(2500)
.attr("y", function(d, i) { return (i*cell.height) + (cell.height-cell.border)/2; });
}