Javascript Highcharts显示/隐藏选定点的数据标签

Javascript Highcharts显示/隐藏选定点的数据标签,javascript,charts,highcharts,Javascript,Charts,Highcharts,在使用highcharts数据标签时仍然有很大的困难。现在我需要通过单击点来显示和隐藏数据标签。我试过这个: plotOptions: { series: { allowPointSelect : true, point: { events: { select /*click*/: function () {

在使用highcharts数据标签时仍然有很大的困难。现在我需要通过单击点来显示和隐藏数据标签。我试过这个:

plotOptions: {
            series: {
                allowPointSelect : true,
                point: {
                    events: {
                        select /*click*/: function () {
                            this.options.dataLabels.enabled = !this.options.dataLabels.enabled;
                            this.update();
                        }
                    }
                }                
            }
        }
但是get
Uncaught TypeError:无法设置未定义的属性“enabled”

PlotOptions级别的点事件为
point。选择
point。单击
,但从highcharts.com上给出的示例中,我无法获得任何帮助

另外,我也不知道我应该使用point还是通过数组访问
来使用某些系列,比如系列[0]。数据[1]
等等。?
谢谢。

将更新的属性传递到
点。update()


这样可以切换它们

将更新的属性传递到
点.update()


这样可以切换它们

非常感谢。但是我如何使它在默认情况下不可见?如果我设置dataLabels:{enabled:false},即使单击一个点也不会显示它们((将条件更改为:
!this.dataLabels | |!this.dataLabels.enabled?true:false;
@Steve.B,更新了fiddle并反转了逻辑,非常感谢。但是,默认情况下如何使其不可见?如果我设置dataLabels:{enabled:false}即使单击一个点,它也不会显示它们((将条件更改为:
!this.dataLabels | |!this.dataLabels.enabled?true:false;
@Steve.B,使用反向逻辑更新fiddle
          point:{
                events:{
                    click: function(){
                        // determine toggle state
                        // on first click this.dataLabels is undefined...
                        var e = !this.dataLabels || this.dataLabels.enabled ? false : true;
                        this.update({
                            dataLabels:{
                                enabled: e
                            }
                        });
                    }
                }
            }