我目前在我的网站上使用 Highcharts。在我的一个图表(基本柱形图)中,我有多个系列,我可以单击底部显示的名称来显示/隐藏。
我可以有很多系列,我想同时将系列的数量限制为 3 个。这意味着当它加载图表时,它只显示 3 个系列,其他系列不显示。如果我单击第 4 个系列,最初存在的 3 个系列中的一个将消失,因此活动系列的数量始终保持为 3。
我一直在寻找它,我发现我需要在 plotOptions.series 字段中进行一些修改,我深入研究了 Highcharts API 参考,但没有找到我想要的。我对代码的第一次尝试是这样的:
$('#container').highcharts({
plotOptions:{
series: {
var series = this.series;
var nb_of_visible_series = 0;
//Here i count the number of visible series
for(var i=0; i<series.length; i++) {
if(series[i].visible) {
nb_of_visible_series++:
}
}
//If too many series are visible I'll randomly
//hide as many series as necessary
if(nb_of_visible_series>3) {
var nb_of_series_to_hide = nb_of_visible_series-3;
while(nb_of_series_to_hide>0) {
var i=Math.floor(Math.random()*series.length);
if(series[i].visible) {
series[i].hide()
nb_of_series_to_hide--;
}
}
}
}
}
}
所以这就是想法,但我不知道把它放在哪里真实(plotOptions.series
我猜不是像这样直接在现场?)。我可以把它放进去,plotOptions.series.events.legentItemClick
但在加载图表时它不会被考虑在内。
我正在寻找有关我的代码的一些跟踪和建议(我是 JS 初学者),并在此先感谢您。对我糟糕的英语感到抱歉。