在您更新图表后的Plunkr中,显示的百分比完全错误。 然而,更新前显示的百分比是正确的,我不知道为什么会这样。
这部分代码的行为不符合预期。
label.transition()
.duration(750)
.text(function(d) {
return textFormat(100/(d.data.total/d.data["apples" + CAT]))+'%'});
感谢任何帮助!
答案 0 :(得分:2)
您只需为d.total
类别计算one
。在您的更新功能中,您需要重新运行:
data.forEach(function(d) {
d.total = d3.sum(data, function(d) { return d3.sum([d["apples" + CAT]]); });
});