Javascript Highcharts显示/隐藏选定点的数据标签
在使用highcharts数据标签时仍然有很大的困难。现在我需要通过单击点来显示和隐藏数据标签。我试过这个:Javascript Highcharts显示/隐藏选定点的数据标签,javascript,charts,highcharts,Javascript,Charts,Highcharts,在使用highcharts数据标签时仍然有很大的困难。现在我需要通过单击点来显示和隐藏数据标签。我试过这个: plotOptions: { series: { allowPointSelect : true, point: { events: { select /*click*/: function () {
plotOptions: {
series: {
allowPointSelect : true,
point: {
events: {
select /*click*/: function () {
this.options.dataLabels.enabled = !this.options.dataLabels.enabled;
this.update();
}
}
}
}
}
但是getUncaught 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
}
});
}
}
}