Легенды ссылки на древовидную карту - PullRequest
0 голосов
/ 20 ноября 2018

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

Например, в этой скрипке, если я нажимаю «Америка»«В легенде я хотел бы, чтобы он отключил обе области, охватывающие« Америку », и аналогично тому, как это происходит с« Австралией ».

Скрипка здесь .

$(function() {
var H = Highcharts;

H.addEvent(H.Legend, 'afterGetAllItems', function(e) {
    e.allItems.splice(1, 2);
});

$('#container').highcharts({
    chart: {
        type: 'treemap'
    },
    plotOptions: {
        series: {
            events: {
                legendItemClick: function (event) {
                    alert('Done');
                }
            }
        }
    },

    series: [{

        data: [{
            'name': 'Americas',
            'value': 52976,
            'color': 'rgba(47,126,216,1)'
        }, {
            'name': 'Australia',
            'value': 41219,
            'color': 'rgba(13,35,58,1)'
        }, {
            'name': 'Americas',
            'value': 52976,
            'color': 'rgba(47,126,216,1)'
        }, {
            'name': 'Australia',
            'value': 41219,
            'color': 'rgba(13,35,58,1)'
        }],
        legendType: 'point',
        showInLegend: true
    }]


});

});

1 Ответ

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

Вы можете использовать точку legendItemClick событие и внутренний setVisible метод:

    plotOptions: {
        series: {
            point: {
                events: {
                    legendItemClick: function(event) {
                        var points = this.series.points;

                        points.forEach(function(p) {
                            if (this !== p && this.name === p.name) {
                                p.setVisible(!this.visible, true);
                            }
                        }, this);
                    }
                }
            }
        }
    }

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

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