Highcharts: общая подсказка для карты тепла - PullRequest
0 голосов
/ 21 марта 2020

Можно ли создать тепловую карту с общими всплывающими подсказками, как в этом примере на демонстрационной странице Highcharts:

Highcharts.chart('container', {

    xAxis: {
        categories: [
            'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
            'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
        ]
    },

    tooltip: {
        shared: true,
        crosshairs: true
    },

    series: [{
        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]
    }, {
        data: [216.4, 194.1, 95.6, 54.4, 29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5]
    }]
});
<!-- Highcharts demo code from https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/tooltip/shared-x-crosshair/ -->

<script src="https://code.highcharts.com/highcharts.js"></script>
<div id="container" style="height: 400px"></div>

Общая всплывающая подсказка для тепловой карты означает, что не существует единой подсказки для каждой категории, а имеется только одна подсказка для каждой точки x, которая отображает значения все категории.

Опция sharedTooltip недоступна для тепловых карт. Так есть ли другой способ получить общие подсказки для тепловых карт в Highcharts?

Спасибо

1 Ответ

0 голосов
/ 23 марта 2020

К сожалению, как вы заметили, функция tooltip.shared не реализована в серии Heatmap. Однако вы должны иметь возможность отображать все значения по категориям с помощью обратного вызова tooltip.formatter .

Демонстрация: https://jsfiddle.net/BlackLabel/yzxenqfa/

  tooltip: {
    formatter: function() {
      var series = this.series,
        output = '<b>' + getPointCategoryName(this.point, 'x') + '</b> sold <br><b>';
      series.points.forEach(p => {
        if (p.x === this.point.x) {
          output += '<br>' +
            p.value + '</b> items on<b> ' + getPointCategoryName(p, 'y') + '</b>'
        }
      })
      return output
    }
  },

API: https://api.highcharts.com/highcharts/tooltip.formatter


Мне известно, что весь столбец не выделен - это может нарушить читаемость цвета оси.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...