【问题标题】:Turn series and plot bands on/off using API使用 API 打开/关闭系列和绘图波段
【发布时间】:2013-01-31 16:51:06
【问题描述】:

我有一个带有自定义图例的图表,即它根本不是 Highcharts 的一部分,它完全是我自己的代码,该图表禁用了 Highcharts 图例。

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

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

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

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/

谢谢, 格雷格。

【问题讨论】:

  • 你能用一些像你这样的数据设置一个示例 jsFiddle 吗?

标签: highcharts


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2013-07-23
    • 1970-01-01
    • 2014-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-05
    相关资源
    最近更新 更多