我正在尝试使用相同的图例连接两个不同的图表(散点图和饼图)。打印到控制台后,似乎javascript正在获取正确饼图的正确数据。它只是不会连接到散点图图例。我也尝试了这些答案提出的建议:HighCharts: One Legend, Two Charts和Multiple pie-charts in the same chart with HighCharts
我在散点图的系列中使用了这段代码:
events: {
legendItemClick: function (event) {
console.log(this.options.name);
var donut = $('#pie_chart').highcharts(),
series_arr = donut.series[0].data;
console.log(series_arr);
for (series in series_arr) {
if (this.options.name === series.name) {
if (this.visible) {
series.visible = true;
} else {
series.visible = false;
}
}
}
}
}
我在这里遗漏了什么吗?这是我的fiddle
答案 0 :(得分:1)
plotOptions
将为
plotOptions: {
column: {
stacking: ''
},
series: {
pointPadding: 0.2,
borderWidth: 0,
dataLabels: {
//enabled: false
},
events: {
legendItemClick: function(event) {
console.log(this.options.name);
var donut = $('#pie_chart').highcharts(),
series_arr = donut.series[0].data;
//console.log(series_arr);
for (series in series_arr) {
if (this.options.name === series_arr[series].name) {
if (this.visible) {
series_arr[series].setVisible(false);
} else {
series_arr[series].setVisible(true)
}
}
}
}
}
}
},
错误是
this.options.name === series.name
,它将是
this.options.name === series_arr[series].name
并使用setVisible()
切换