На созданной круговой диаграмме мне нужно изменить mouseTracking после вызова функции в угловом компоненте.
К сожалению, для параметра enableMouseTracking установлено значение false на Highcharts -> setOptions -> plotOptions -> series или series -> setOptions не оказывает никакого влияния на график.
Highcharts.setOptions({
plotOptions: {
series: {enableMouseTracking: false}
}
});
this.chartRef.series[0].setOptions({
enableMouseTracking: false
});
Даже дополнительное выполнение setData (просто перерисовать диаграмму тоже не помогает)
enableMouseTracking работает правильно при первоначальной установке в chartOptions перед созданием круговой диаграммы.
Можно ли изменить mouseTracking на созданном графике и, если да, то как это сделать?
Посоветуйте, пожалуйста.Заранее спасибо.
Больше кода ниже:
Package.json
"@angular/core": "7.2.12",
"highcharts": "7.1.1",
"highcharts-angular": "2.4.0",
HTML
<highcharts-chart
[Highcharts]="Highcharts"
[options]="chartOptions"
[update]="false"
[runOutsideAngular]="true"
style="width: 300px; height: 280px; display: block;"
></highcharts-chart>
Машинопись
export class MyChartComponent implements OnInit, AfterViewInit, OnDestroy {
public Highcharts = Highcharts; // required
private chartRef;
public chartOptions = {
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false,
type: 'pie',
events: this.getHighchartsEvents()
},
series: [{
name: 'Data',
enableMouseTracking: true,
size: '100%',
innerSize: '50%',
data: [this.highchartsData]
}],
// [...]
}
private getHighchartsEvents() {
const self = this;
return {
load: function(event) {
self.chartRef = this;
}
}
}
public disableMouseTracking() {
if(this.chartRef) {
Highcharts.setOptions({
plotOptions: {
series: {enableMouseTracking: false}
}
});
const turnOffMouseTracking = {
enableMouseTracking: false
};
this.chartRef.series[0].setOptions(turnOffMouseTracking);
// this.chartRef.series[0].setData(this.highchartsData); // additional execution of setData (just to redraw the chart does not help either)
}
}