使用API​​打开/关闭系列和绘制波段

时间:2013-01-31 16:51:06

标签: highcharts

我有一个包含自定义图例的图表,即它根本不属于Highcharts,它完全是我自己的代码,此图表禁用了Highcharts图例。

是否可以使用API​​在Highcharts图表中打开/关闭系列数据和绘图带?

我找到了一个触发图例项目的点击事件来执行此操作的示例,但这显然依赖于存在的图例,所以这对我没用:http://birdchan.com/home/2013/01/23/trigger-a-click-event-on-a-legend-item-in-highchart/

我还尝试将系列数据.visible属性设置为false,然后重绘图表,虽然它设置了可见属性,但它不会重绘图表,所以没有任何变化:

var chart = new Highcharts.Chart(myoptions);

$("#custom_legend_link").click(function (e) {
    chart.series[0].visible = !chart.series[0].visible;
    chart.redraw();
}

这是一个使用基本线演示的jsFiddle,显示我的问题:

http://jsfiddle.net/gfyans/zsaV4/

谢谢, 格雷格。

1 个答案:

答案 0 :(得分:2)

要切换系列,请使用Series.setVisible()。当没有参数调用时,它会切换。

绘图带有点不同,因为它们没有hide(),show()或setVisible等方法。要切换绘图带,您需要按Axis.removePlotBand()将其删除,然后通过Axis.addPlotBand()添加一个具有相同选项的新带。