Highcharts 将图例饼图自定义为标记div

Highcharts 将图例饼图自定义为标记div,highcharts,legend,Highcharts,Legend,我成功地将图例创建到div external中,但单击“图例外部”时,图表上没有事件显示/隐藏序列 我认为函数事件/加载时存在问题,但我仍然无法修复 events: { load: function () { var chart = this; $(chart.series[0].data).each(function (i, serie) { $('&

我成功地将图例创建到div external中,但单击“图例外部”时,图表上没有事件显示/隐藏序列

我认为函数事件/加载时存在问题,但我仍然无法修复

        events: {
            load: function () {
                var chart = this;
                $(chart.series[0].data).each(function (i, serie) {
                    $('<li style="color: ' + serie.color + '">' + serie.name + '</li>').click(function () {
                        serie.visible ? serie.hide() : serie.show();
                    }).appendTo('#legend');
                });
            }
        }
这是我的JSFIDLE:

谢谢

使用


这对我来说是个好答案。我阅读了关于setVisibleboolean和series.show和series.hide的文档,据我所知似乎是一样的,但为什么使用setVisible是正确的,而另一个是不正确的?正如在控制台日志错误中所说,serie.hide不是一个函数,因为它在您的帖子中是动态的,visible是每个系列的属性,所以setVisible在我的帖子中起作用
 events: {
            load: function () {
                var chart = this;
                $(chart.series[0].data).each(function (i, serie) {
                //console.log(serie)
                    $('<li style="color: ' + serie.color + '">' + serie.name + '</li>').click(function () {
                        serie.visible ? serie.setVisible(false) : serie.setVisible(true);
                    }).appendTo('#legend');
                });
            }
        }