Поиск области, по которой щелкают, в диаграмме C3js с накоплением - PullRequest
0 голосов
/ 23 января 2019

У меня есть диаграмма Stacked Area в c3.js, и я пытаюсь создать событие двойного щелчка, которое сообщит мне, в какой области диаграммы щелкают.

Мне удалось выяснить, как получить его, чтобы увидеть, какое значение X щелкает по этому сценарию.

    chart.internal.main.selectAll('.' + c3.chart.internal.fn.CLASS.eventRect).on('dblclick', function () {
    var $$ = chart.internal;
    $$.main.selectAll('.' + c3.chart.internal.fn.CLASS.area).each(function (d) {
        if ($$.isWithinShape(this, d)) {
            var coords = d3.mouse(this);
            var xCoord = coords[0];
            var xScale = chart.internal.x.invert;
            var xValue = new Date(xScale(xCoord));
        }
    });    

Но выяснение, на какую из областей сложения щелкнули, ускользает от меня. Диаграмма имеет три области с накоплением, и $$.main.selectAll охватывает все три из них, но $$.isWithinShape также проходит все три из них.

...