Отсутствует название серии в качестве ярлыка в картах высокой чартов - PullRequest
0 голосов
/ 29 ноября 2018

Я создал календарь с использованием тепловой карты, например:

экран календаря:

enter image description here

Типы осей - категории,поэтому месяцы размещаются в виде блоков с соответствующим смещением в матрице.Каждый месяц определяется как серия с именами.

Теперь моя проблема в том, что я хочу показать название месяца над блоком.Однако я не нашел способа отобразить серийное имя.Его просто игнорируют.По оси абсцисс отображается только индекс категории.Я не могу использовать это.Метка данных содержит значение цвета для тепловой карты.Мой обходной путь в настоящее время состоит в том, что я вставляю названия месяцев как PlotLine.Но это не тот путь.Тем более что позиционирование не зависит от месячного блока и, следовательно, подвержено ошибкам.

series: [{
    name: 'January',
    keys: ['x', 'y', 'value'],
    data: [...]
}, ...next month...]

jsFiddle пример

1 Ответ

0 голосов
/ 30 ноября 2018

Вы можете использовать Highcharts.SVGRenderer для добавления названия серии в виде текста в вычисляемой позиции:

    events: {
        load: function() {
            var series = this.series,
                bbox;

            series.forEach(function(s) {
                bbox = s.group.getBBox(true);
                this.renderer.text(
                        s.name,
                        bbox.x + this.plotLeft + bbox.width/2,
                        bbox.y + this.plotTop - 10
                    )
                    .attr({
                        align: 'center'
                    })
                    .css({
                        color: 'black',
                        fontSize: '12px'
                    })
                    .add();
            }, this);
        }
    }

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

Справочник по API: https://api.highcharts.com/class-reference/Highcharts.SVGRenderer#text

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