我有这个数据结构:
[ {X:1,对比例:63.79,H:21.74,L:7.25,EDU:8.7}, {X:2,补偿:63.79,H:21.74,L:7.25,EDU:8.7}, {X:3,补偿:57.99,H:21.74,L:7.25,EDU:8.7}, {X:4,小样:56.54,H:21.74,L:7.25,EDU:8.7}, {X:5,排版:50.74,H:21.74,L:7.25,EDU:8.7}, {X:6,排版:36.24,H:21.74,1:0,EDU:8.7}, {X:7,排版:34.8,H:0,1:7.25,EDU:8.7}, {X:8,补偿:30.45,H:0,1:7.25,EDU:8.7}, {X:9,补偿:34.8,H:0,1:0,EDU:8.7}, {X:10,排版:34.8,H:0,1:7.25,EDU:8.7} ];
我正在尝试制作饼图表示法。 我尝试从d3教程中学习,但是在这种情况下这些并不是那么有用。 这些教程仅适用于[10,20,30,40]等线性结构。 但在我的情况下,我必须为每个记录创建一个饼图,并且每个记录都有4个参数包含在饼图中。 我意识到(根据教程的理解)我需要为每个属性的每一行制作弧形生成器。但是找不到这样做的方法。而且,似乎不可行。 特别是bcoz,你我必须写一些东西(根据我对线性结构的尝试):
var pie = d3.layout.pie()
.value(function(d){ return d; });
var arcs = group.selectAll(".arc")
.data(pie(data))
.enter()
.append("g")
.attr("class", "arc");
arcs.append("path")
.attr("d", arc)
.attr("fill", function(d){ return color(d.data); });
有没有出路....我在想我应该改造数据结构,或者至少在使用之前改变它。
谢谢你的进步!