D3.js 如何在d3中更新圆环图的内半径和外半径?
我试图通过使用滑块来更改圆环图的内半径和外半径 以下是JSFIDLE链接: 总是给我错误:属性d的值无效=“……”D3.js 如何在d3中更新圆环图的内半径和外半径?,d3.js,donut-chart,D3.js,Donut Chart,我试图通过使用滑块来更改圆环图的内半径和外半径 以下是JSFIDLE链接: 总是给我错误:属性d的值无效=“……” T^T在移动滑块后定义newarc时,需要包括startAngle和endAngle属性,方法与第一次定义arc时相同 这就是您需要做的全部工作: var newarc = d3.svg.arc() .innerRadius(innerRadius - (30 * value)) .outerRadius(outerRadius) .startA
T^T在移动滑块后定义
newarc
时,需要包括startAngle
和endAngle
属性,方法与第一次定义arc
时相同
这就是您需要做的全部工作:
var newarc = d3.svg.arc()
.innerRadius(innerRadius - (30 * value))
.outerRadius(outerRadius)
.startAngle(function(d, i) {
return radians * i
})
.endAngle(function(d, i) {
return radians * (i + 1)
});
d3.selectAll(".seg").attr("d", newarc);
请注意,为了更清楚地了解滑块移动时发生的情况,我将innerRadius
值设置为取决于滑块的值
在这里看到一把正在工作的小提琴:你能把你的完整代码放在小提琴上吗?用这个小纸条是不可能分辨出错误的。哦,好的,当然!谢谢
var newarc = d3.svg.arc()
.innerRadius(innerRadius-30)
.outerRadius(outerRadius-30);
d3.selectAll(".seg").attr("d",newarc)
var newarc = d3.svg.arc()
.innerRadius(innerRadius - (30 * value))
.outerRadius(outerRadius)
.startAngle(function(d, i) {
return radians * i
})
.endAngle(function(d, i) {
return radians * (i + 1)
});
d3.selectAll(".seg").attr("d", newarc);