Javascript 如何使径向梯度从饼图的中心开始?
在中,我集成了一个径向梯度。问题是每个饼都有一个梯度。我想要一个普通的梯度,它从饼图的中心开始 我试过:Javascript 如何使径向梯度从饼图的中心开始?,javascript,css,d3.js,Javascript,Css,D3.js,在中,我集成了一个径向梯度。问题是每个饼都有一个梯度。我想要一个普通的梯度,它从饼图的中心开始 我试过: var arc = d3.svg.arc() .attr('fill', 'url(#gradient)') .outerRadius(function(d) { return 50 + (radius - 50) * d.data.percent / 100; }) .innerRadius(20); 但这没用 如何使径向梯度从饼图的中心开始 在JSFIDLE中,您使用了错误的属性。径向
var arc = d3.svg.arc()
.attr('fill', 'url(#gradient)')
.outerRadius(function(d) { return 50 + (radius - 50) * d.data.percent / 100; })
.innerRadius(20);
但这没用
如何使径向梯度从饼图的中心开始
在JSFIDLE中,您使用了错误的属性。径向梯度没有x1、x2等。它有cx、cy等 在
标记上,添加一个名为的属性,并将其值设置为“userSpaceOnUse”
这意味着将为整个SVG考虑渐变属性百分比(cx、cy等),而不仅仅是特定形状。然后根据需要调整值
以下是可行的解决方案:我认为这是可行的。但是渐变的中心不在饼图的中心。我该如何移动它@RahulDesai您必须根据需要调整
cx
、cy
和r
+这是一个很好的答案。