所以我有一些设计师的要求:
1)允许用户通过单击图表容器外部的链接来选择/取消选择所有图例项。这意味着我需要以编程方式打开或关闭图表中的所有项目,无论当前是否选择/取消选择。
2)确定图表中选择(或启用)的特定图例项目,以便我们可以从选择中生成另一个图表。
我没有看到使用API的方法,所以我想知道是否有人为这两种方法(或两者)提出了可能的解决方案。
提前感谢任何指导。
答案 0 :(得分:21)
Highcharts允许我们从外部切换图例状态。
series[0].hide(); series[0].show();
由highcharts提供,我们可以使用它来实现您要求的功能。
这里有一个小提琴供你参考http://jsfiddle.net/gfNYk/1/
答案 1 :(得分:3)
series [i] .visible是属性
答案 2 :(得分:2)
如果您有很多系列,隐藏()和 show()会导致非常糟糕的效果。或者,您可以在每个系列上使用 setVisible(),最后使用 redraw()。
$('#uncheckAll').click(function(){
var chart = $('#container').highcharts();
var series = chart.series;
for(i=0; i < chart.series.length; i++) {
series[i].setVisible(false, false);
}
chart.redraw();
});
$('#checkAll').click(function(){
var chart = $('#container').highcharts();
var series = chart.series;
for(i=0; i < chart.series.length; i++) {
series[i].setVisible(true, true);
}
chart.redraw();
});
确定是否选择了系列,您可以使用 series.visible 属性