我当前正在使用Highcharts v8.1.0,并且正在实现具有向下钻取功能的柱形图。
我想实现以下内容:
我正在使用highcharts-custom-events插件,可以捕获双击事件,但无法弄清楚如何将被单击的列设置为选中状态。
这是我的plotOptions配置:
plotOptions: {
column: {
events: {
dblclick: function(e){
self.dblClickDetected = true;
this.selected = true;
console.log('DOUBLE CLICK', self.chart.getSelectedSeries())
}
}
}
这是追溯事件的配置:
drilldown: (event) => {
event.preventDefault();
setTimeout(() => {
if(!this.dblClickDetected){
...do something here...
}
}, 500);
this.dblClickDetected = false;
}
单击和双击的行为可以更容易实现,可以颠倒。
我准备了一个演示,可以帮助您实现所需的效果。
演示:https://jsfiddle.net/BlackLabel/7aubt81y/
plotOptions: {
column: {
point: {
events: {
dblclick: function(e) {
if (this.state !== 'select') {
this.update({
selected: true
})
} else {
this.update({
selected: false
})
}
}
}
}
}
},
API:https://api.highcharts.com/highcharts/series.line.selected
API:https://api.highcharts.com/class-reference/Highcharts.Point#update