数据格式
和径向线的数据结构类似,只是将其半径分为内半径和外半径两个,如下所示:
var data = [{innerRadius:50, outerRadius:100, angle:0},{innerRadius:50, outerRadius:100, angle:per},{innerRadius:50, outerRadius:100, angle:2*per},{innerRadius:50, outerRadius:100, angle:3*per},{innerRadius:50, outerRadius:100, angle:4*per},{innerRadius:50, outerRadius:100, angle:5*per},{innerRadius:50, outerRadius:100, angle:6*per},{innerRadius:50, outerRadius:100, angle:7*per},{innerRadius:50, outerRadius:100, angle:8*per}];
但是如果innerRadius和outerRadius分别都是一样的的话,就没必要这样定义了。
构造器
定义径向面积生成器是必须定义它的angle访问器,innerRadius访问器,outerRadius访问器。这是最简单的形式了。
var radialArea = d3.radialArea().angle(function (d) {return d.angle;}).innerRadius(function(d){return d.innerRadius;}).outerRadius(function(d){return d.outerRadius;});
从上面的可以看出,数据格式可以是随意的,只要能和构造器中的d参数匹配上就可以了。
同样也可以使用curve使得面积有各种变形。