whl*_*ead 2 sorting graphael pie-chart
考虑:
value1 = 5;
v1_color = #ff0000;
value2 = 4;
v2_color = #00ff00;
value3 = 3;
v3_color = #0000ff;
var r = Raphael("holder");
pie = r.piechart(320,320,250,{value1,value2,value3},{colors: [v1_color, v2_color,v3_color]});
Run Code Online (Sandbox Code Playgroud)
这将生成一个饼图,其中上部切片为红色,右下角的切片为绿色,最后的切片为蓝色.但是,如果值改变如下:
value1 = 4;
value2 = 3;
value3 = 5;
Run Code Online (Sandbox Code Playgroud)
图表看起来完全一样,但颜色不再代表正确的值.在源代码中,第99-101行显示了正在排序的值,但没有其他内容.
我希望颜色对应于某个变量,无论它有多大,而不是获得选项中列出的第一个颜色的最大变量.
在它绘制切片的代码部分(第133行),它引用opts.matchColors
,但我找不到任何关于如何在调用函数时设置它的文档.
任何想法如何实现这一目标?
遗憾的是,opts.matchColors根本没有记录,因为它正是您所需要的.
opts.matchColors强制它使colors数组的顺序与values数组的顺序相匹配.当按大小重新排序值时,颜色将以其原始值应用于楔形.
matchColors默认为false,因此您需要在options数组中显式设置它,如下所示:
var pie = r.piechart(320, 320, // center 250, // radius [ value1, value2, value3 ], { colors : [ v1_color, v2_color, v3_color ], matchColors : true });
归档时间: |
|
查看次数: |
1602 次 |
最近记录: |