Включить детализацию в highchart без изменения серии

Я хочу включить детализацию в highcharts, но мое ограничение заключается в том, что я не могу изменять данные в свойстве «серия» диаграммы. Следовательно, я не могу установить для свойства «детализация» значение true/любое значение для любого элемента в серии.

Я попытался определить свойство «события» в объекте «диаграмма». Но это, похоже, не работает до тех пор, пока я не укажу для свойства «детализация» значение true для элементов в параметрах серии.

Итак, есть ли способ включить/установить для свойства детализации значение true для диаграммы без изменения моей серии? Моя серия будет иметь только массив пары имя/значение и НИКАКИХ других свойств.


person sidrocks    schedule 19.08.2014    source источник


Ответы (2)


Вы можете использовать метод Chart.addSeriesAsDrilldown (API) для достижения чего-то подобного.

Например, ваш прослушиватель кликов может быть:

plotOptions: {
    series: {
        point: {
            events: {
                click: function(e) {
                    $('#container').highcharts()
                            .addSeriesAsDrilldown(this, { data: [1,2,3] });
                }
            }
        }
    }
}

См. эту JSFiddle для демонстрации.

person Halvor Holsten Strand    schedule 19.08.2014
comment
Отлично, это работает для меня. Не могли бы вы сообщить мне, где вы нашли это документально? Спасибо! - person sidrocks; 19.08.2014
comment
Это ссылка API: api.highcharts.com/highcharts#Chart.addSeriesAsDrilldown - person Halvor Holsten Strand; 19.08.2014

Согласно API Highcharts, его нет, и даже если бы он был, он не предназначен для использования таким образом. Насколько вы ограничены в изменении серии? Разве вы не можете просто зациклить серию в javascript и динамически добавить свойство детализации перед инициализацией диаграммы?

person ODaniel    schedule 19.08.2014
comment
Я понимаю ваше решение, но я не могу этого сделать. Это потому, что я использую библиотеку, которая рисует для меня диаграмму. Я могу просто предоставить данные (только имя и значение) в эту библиотеку. Я понимаю, что это связано с ограничениями библиотеки, которую я использую. Следовательно, я пытаюсь найти обходной путь. - person sidrocks; 19.08.2014