Двойной щелчок по линейной диаграмме c3js

Я пытаюсь создать событие двойного щелчка на линейной диаграмме c3js. Я создал события двойного щелчка с другими типами диаграмм со следующим кодом:

    chart.internal.main.selectAll('.' + c3.chart.internal.fn.CLASS.eventRect).on('dblclick', function (d) {
    var $$ = chart.internal;
    $$.main.selectAll('.' + c3.chart.internal.fn.CLASS.bar).each(function (d) {
        if ($$.isWithinShape(this, d)) {

         ...

        }
    });

Но когда я пробую это на линейной диаграмме (изменяя c3.chart.internal.fn.CLASS.bar на c3.chart.internal.fn.CLASS.line), он улавливает все линии на диаграмме и не дает информации о том, где на оси X я нажимаю. Я просмотрел все остальные значения под CLASS, но не нашел ничего, что могло бы соответствовать точкам, разделяющим сегменты линии.


person Hypersapien    schedule 16.01.2019    source источник


Ответы (1)


Я понял. Мне нужно использовать c3.chart.internal.fn.CLASS.circle. Это скажет мне, на какую точку данных нажимают.

Я не пробовал это с отключенными кругами. Тогда это может не сработать.

person Hypersapien    schedule 16.01.2019