【发布时间】:2017-02-21 10:48:21
【问题描述】:
如何在 3 个饼图上添加图例(请参阅 this fiddle)。
我要指定浅蓝色对应图例“AAA”,中蓝色对应“BBB”,蓝色对应“CCC”。
我还想在每个馅饼中添加数值。我尝试了这种方法,但随后图表消失了:
var data = [
[{"piece_value",76.34}, {"piece_value",69.05}, {"piece_value",275.19}],
[{"piece_value",69.93}, {"piece_value",61.50}, {"piece_value",153.31}],
[{"piece_value",83.51}, {"piece_value",69.14}, {"piece_value",204.32}]
];
svg.selectAll("path")
.data(d3.layout.pie().value(function(d) { return d.piece_value; }))
.enter().append("path")
.attr("d", d3.svg.arc()
.innerRadius(r / 2)
.outerRadius(r))
.style("fill", function(d, i) { return z(i); });
更新:
我也试过了,结果一样:
var pie = d3.layout.pie()
.sort(null)
.value(function(d) { return d.piece_value; });
svg.selectAll("path")
.data(pie(data))
.enter().append("path")
.attr("d", d3.svg.arc()
.innerRadius(r / 2)
.outerRadius(r))
.style("fill", function(d, i) { return z(i); });
【问题讨论】:
-
您是在寻找特定的代码示例还是只是为了一些想法?您可以通过以声明方式添加 svg
组标记并将其定位在 -
@codeepic:我对 d3 和 JavaScript 没有什么经验。因此,我正在寻找我发布的小提琴中的具体代码片段。我也很感激我的代码中相应更改的详细 cmets。谢谢。
标签: javascript d3.js svg