我正在尝试构建甜甜圈图。如何添加特定于弧线的不同颜色。例如,我想要状态"一个",蓝色的红色,蓝色为"两个",绿色状态"三"等...
...我尝试了以下内容,
var color = d3.scale.ordinal()
.domain(["one","two","three","four","five"])
.range(["#013ADF", "#ACFA58", "#DF3A01", "#6b486b", "#a05d56"]);
paths.enter().append("svg:path")
.attr("stroke", "white")
.attr("stroke-width", 0.5)
.attr("fill", function(d, i) {console.log(color(d.name)); return color(d.name); })
我最初能够获得颜色。但是,当任何状态计数减少到0时,颜色就会被改组。再一次,当我增加状态数量时,我无法将特定的颜色恢复……
请帮助一些建议....
您最好每次更新颜色,不仅在Enter()。
中paths.enter().append("svg:path")
.attr("stroke", "white")
.attr("stroke-width", 0.5)
path.attr("fill", function(d, i) {console.log(color(d.name)); return color(d.name); })