我正在尝试将颜色设置为具有多个环的 jqplot 圆环图。我需要每个切片都填充特定的颜色,如下例所示:
我在文档中读到,我需要将“varyBarColor”设置为true,并将“series”与数组一起使用许多“seriesColors”,但它只显示默认颜色。
这是我到目前为止的代码:
var s1 = [['a',8], ['b',12]];
var s2 = [['a',3], ['b',17]];
var s3 = [['a',6], ['b',14]];
var s4 = [['a',10], ['b',10]];
var s5 = [['a',2], ['b',18]];
var plot4 = $.jqplot('divId', [s1, s2, s3, s4, s5], {
seriesDefaults: {
series: [
{seriesColors: [ "#8156a1", "#000"]},
{seriesColors: [ "#418cc8", "#ec79c0"]},
{seriesColors: [ "#ec79c0", "#f69c44",]},
{seriesColors: [ "#f69c44", "#fadb48"]},
{seriesColors: [ "#fadb48", "black"]}
],
renderer:$.jqplot.DonutRenderer,
rendererOptions:{
sliceMargin: 0,
lineWidth: 0,
startAngle: 90,
showDataLabels: false,
shadowAlpha: 0,
ringMargin:2,
varyBarColor: true,
thickness: 7
}
},
grid: {
background: 'transparent',
borderColor: 'transparent',
shadow: false,
drawGridLines: false,
gridLineColor: 'transparent',
borderWidth: '0'
}
});
知道如何让它发挥作用吗?
提前致谢。
最佳答案
好吧,我设法解决了这个问题(事实上,这是一个非常愚蠢的问题)。系列值应该在 seriesDefaults 之外,而不是像我所做的那样在里面:
var plot4 = $.jqplot('divId', [s1, s2, s3, s4, s5], {
series: [
{seriesColors: [ "#8156a1", "#000"]},
{seriesColors: [ "#418cc8", "#ec79c0"]},
{seriesColors: [ "#ec79c0", "#f69c44",]},
{seriesColors: [ "#f69c44", "#fadb48"]},
{seriesColors: [ "#fadb48", "black"]}
],
seriesDefaults: {
renderer:$.jqplot.DonutRenderer,
rendererOptions:{
sliceMargin: 0,
lineWidth: 0,
startAngle: 90,
showDataLabels: false,
shadowAlpha: 0,
ringMargin:2,
varyBarColor: true,
thickness: 7
}
},
grid: {
background: 'transparent',
borderColor: 'transparent',
shadow: false,
drawGridLines: false,
gridLineColor: 'transparent',
borderWidth: '0'
}
});
关于javascript - 如何设置带有多个环的每个切片的 jqplot donut chart 颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25269224/