每当数据发生变化时,我都会尝试在 d3.js 中更新我的图例。我的jsfiddle都应该更新图例。每当使用更新日期按钮将不同的数据放入费用中时,密钥集就会发生变化。
我想是这样的:
var legendBox = legend.selectAll("rect")
.data(keys);
legendBox.enter()
.append("rect");
legendBox.exit()
.remove();
legendBox.attr("x", width - 150)
.attr("y", function (d, i) { return i * 20;})
.attr("width", 10)
.attr("height", 10)
.style("fill", function (d, i) { return color(i);});
每当键数组更改时,都会更新我的图例并删除旧标签。但它不会删除旧标签,它只是在旧标签之上添加标签。如何更新我的图例以反映日期?