Highcharts - 如何通过js切换数据标签?

时间:2013-02-01 17:34:02

标签: javascript jquery internet-explorer highcharts

我想以这样的方式使用Highcharts,点击图例项目可以为该特定类别启用数据标签。这可能吗?我尝试了以下方法来启用数据标签,但没有运气:

chart.series[0].data.dataLabels.enabled = true;

这是我正在使用的jsfiddle:http://jsfiddle.net/MXZgj/3/(请搜索legendItemClick以查看适用代码的位置)。

感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

这有效:

 chart.series[0].update({ dataLabels: { enabled:true }})

答案 1 :(得分:1)

我最终不得不迭代系列中的每一点并启用每个单独的数据标签。

series: {
    events: {
        legendItemClick: function(event) {                   
            var selected = this.index;
            var allSeries = this.chart.series;

            $.each(allSeries, function(index, series) {                
                if (selected == index) {
                    $.each(series.points, function(i, point) {
                        point.update({
                            dataLabels: {
                                enabled: true
                            }
                        });
                    });
                } else {
                    $.each(series.points, function(i, point) {
                        point.update({
                            dataLabels: {
                                enabled: false
                            }
                        });
                    });
                }
            });

            return false;
        }
    }
}

可以使用一些代码清理,但工作原理很好。