任何人都知道这是否可行?
基本上我需要能够仅使用颜色部分遮蔽饼图切片,例如0-10的范围,其中0表示饼图中没有颜色,10表示完全着色。谢谢你的帮助!
答案 0 :(得分:1)
(免责声明:我的另一个答案是关于饼图的图例和正确定位相当苛刻,但是当你无法修改插件代码时可以工作,所以这里是一个更清洁的第二版。)
默认方法无法实现这一点,但直接更改饼图插件则相对简单。复制插件(source,版本1.1)并对您的本地副本进行以下更改:
function drawPie()
中的第395行和第406行:slices[i].radius
添加到drawSlice()
次调用的参数中。 function drawSlice()
中的第423行:
将函数的标题更改为
function drawSlice(angle, color, fill, sliceRadius) {
function drawSlice()
中的第428行:
添加以下代码:
if (!jQuery.isNumeric(sliceRadius)) {
sliceRadius = radius;
}
else if (sliceRadius >= 0.0 && sliceRadius <= 1.0) {
sliceRadius = radius * sliceRadius;
}
{44}中的第441行至第443行(在插入代码之前):
将function drawSlice()
替换为radius
。
完成上述更改后,您可以为饼图中的每个数据点/切片定义sliceRadius
属性。这遵循与一般radius
属性相同的规则(如果radius
在0和1之间,它将用作一般半径的百分比,否则它将用作像素值。)
以下是fiddle,显示radius
属性的不同值:
radius