Всплывающая подсказка AmCharts 4 и положительный цвет одного LineSeries - PullRequest
0 голосов
/ 26 июня 2019

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

В приведенной выше диаграмме LineSeries указаны положительные и отрицательные значения с разными цветами линий, но всплывающая подсказка имеет только отрицательное значение.

Возможно ли, чтобы положительная линия имела другой цвет всплывающей подсказки, а отрицательная - другой цвет всплывающей подсказки?

1 Ответ

0 голосов
/ 28 июня 2019

Да, это вполне возможно.

Во-первых, чтобы настроить цвет фона всплывающей подсказки , вам нужно убить поведение по умолчанию при получении информации о цвете от вызывающего объекта (в этом случае он получает fill из серии ). Это сделано через:

series.tooltip.getFillFromObject = false;

Затем, чтобы настроить фон:

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

Чтобы переключить цвет фона на основе значения, которое он показывает, мы можем сделать это одним из способов - использовать адаптер для серии 'tooltipText, потому что, когда это срабатывает, мы знаем, что отображается подсказка и / или меняется. Там мы можем определить текущий источник 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

...