默认情况下,边框采用相应系列或点的颜色。但是我想为某个数据点的工具提示设置不同的颜色,而不改变数据点本身的颜色。
我需要这样的东西:
series: [ { x:1, value: 2.34, tooltip:{borderColor: '#112233'} }, ... ];
可悲的是,这个属性不能从一个系列中设置。
通过在工具提示配置中设置格式化程序回调函数,只能定义工具提示的内部HTML,即无法在此函数中更改边框颜色。
这只能通过一些CSS技巧来实现吗?
答案 0 :(得分:0)
可以通过包装tooltip.refresh()方法来实现。
首先,我检查工具提示是否显示,不共享,不分割(共享或拆分工具提示需要一些不同的代码)。然后,我检查选项是否已设置并更改svg元素的笔画属性。
Highcharts.wrap(Highcharts.Tooltip.prototype, 'refresh', function(p, point, mouseEvent) {
p.call(this, point, mouseEvent);
if (!this.isHidden && !this.shared && !this.split) {
var pointTooltipBorderColor = point &&
point.options.tooltip &&
point.options.tooltip.borderColor,
seriesTooltipBorderColor = point &&
point.series &&
point.series.options.tooltip &&
point.series.options.tooltip.borderColor,
borderColor = pointTooltipBorderColor || seriesTooltipBorderColor,
label = this.label;
if (label && borderColor) {
label.attr({
stroke: borderColor
});
}
}
});