Как сохранить легенду хай-чартов, скрывая сериал - PullRequest
0 голосов
/ 11 июня 2018

Я добавил несколько пустышек в верхние чарты, но хочу, чтобы они всегда были невидимы, независимо от того, нажимаю ли я на их легенды.

series.push({
    name: 'dummyPoint',
    fontFamily: 'Arial',
    data: [dummyPointX, dummyPointY],
    visible: false,
    showInLegend: true
})

Проблема с приведенным выше кодом состоит в том, что легендыпо умолчанию отображаются серым цветом, и при щелчке легенд отображаются манекены.Как сделать так, чтобы оно по умолчанию не выкрашивалось, и чтобы фиктивные точки оставались невидимыми всегда?

Ответы [ 2 ]

0 голосов
/ 12 июня 2018

Вы можете сделать небольшую хитрость, чтобы добиться этого: создать «фантомную» серию без данных и связать скрытую серию с ней.Элемент легенды будет сгенерирован для фантомной серии и также будет использоваться для скрытой серии.Затем отключите действие по умолчанию для этого элемента в events.legendItemClick:

  series: [{
    // Phantom series - created just to generate legend item
    name: 'Series 1',
    events: {
      legendItemClick: function(e) {
        e.preventDefault();
      }
    }
  }, {
    data: [3, 0],
    visible: false,
    name: 'Series 1',
    linkedTo: ':previous',
  }, {
    data: [1, 2],
    name: 'Series 2'
  }]

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

Ссылки API:

0 голосов
/ 11 июня 2018

Это можно сделать с помощью series.events.legend.itemClick - Api Documentation

  series: [{
    name: 'Point 1',
    color: '#00FF00',
    data: [1, 2.5, 3, 4, 3.2],
    visible: false,
    showInLegend: true,
    events: {
      legendItemClick: function() {
        return false;
      }
    }
  }

edit : совершенно невидимая легенда Обновленная скрипка

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