我有一个包含两个系列(今年,去年)的柱形图,我想在其中设置某些“组”的颜色来表示季节,例如:
为此,我为每个系列设置了colors
,并使用了colorByPoint
选项。参见this fiddle。
请注意,图表图例对两个系列的符号使用相同的灰色。 (我什至不知道灰色来自哪里-这不是两个系列中“调色板”中的一个)。
如何为每个系列设置图例符号颜色?(理想情况下,我想在“今年”系列中使用较深的灰色,以反映这些颜色是该系列中所有点的颜色都较暗)。
注意:尽管还有其他方法可以为每个数据点设置颜色,例如使用对象数组作为包含颜色设置的data
参数,但我不想这样做之所以这样,是因为在我的实际示例中,数据是通过data
模块来自CSV文件的-因此,我无法以这种方式使用对象。
答案 0 :(得分:1)
基于Code review,我更新了代码以支持最新版本。
如果包装colorizeItem
类的Legend
函数,则可以使用legendColor
属性:
(function(H) {
H.wrap(H.Legend.prototype, 'colorizeItem', function(proceed, item, visible) {
var color = item.color;
item.color = item.options.legendColor;
proceed.apply(this, Array.prototype.slice.call(arguments, 1));
item.color = color;
});
}(Highcharts));
您仍然应用legendColor
:
$('#container').highcharts({
series: [{
legendColor: 'black',
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}]
});
查看其中的this previous answer。