单个 LineSeries 的 AmCharts 4 工具提示负色和正色

AmCharts 4 tooltip negtive and positive color of single LineSeries

https://www.amcharts.com/demos/date-based-line-chart/

上面有一个 LineSeries 图表,带有不同线条颜色的正值和负值,但工具提示只有负值颜色。

是否可以让正线具有不同颜色的工具提示,而负线具有另一种工具提示颜色?

是的,完全有可能。

首先,对于 adjust the background color of a tooltip,您需要取消其从调用对象获取颜色信息的默认行为(在本例中它从系列中获取 fill)。这是通过以下方式完成的:

series.tooltip.getFillFromObject = false;

然后调整背景:

series.tooltip.background.fill = // color here

要根据其显示的值切换其背景颜色,我们可以使用 adapter 作为系列的 tooltipText,因为当它触发时我们知道工具提示是正在显示 and/or 变化。在那里我们可以检测到当前 dataItem 的来源,检查值,并相应地调整工具提示的背景 fill

示例代码:

series.tooltip.getFillFromObject = false;
series.tooltip.background.fill = "blue";
series.adapter.add("tooltipText", function(tooltipText) {
  if (series.tooltipDataItem.dataContext.visits < 0) {
    series.tooltip.background.fill = "red";
  } else {
    series.tooltip.background.fill = "blue";
  }
  return tooltipText;
});

演示:

https://codepen.io/team/amcharts/pen/913514e19a189c8779e07ffcae861ce3