如何在不删除传奇的情况下隐藏HighCharts中的饼图切片?

时间:2014-04-15 17:00:37

标签: javascript jquery plugins charts highcharts

我到处寻找答案,但我似乎无法弄清楚我在这里做错了什么。

我只是希望能够使用HighCharts启动一个饼图,隐藏某些切片(就好像它们已经在图例中“点击”了一样)。

我在HighStock中做过这件事,这很简单:

var chart = $("#overallChart").highcharts(); //$("#overallChart") is the div where my HighStock chart is rendered to.
var series = chart.series;

//*****SET DEFAULT STARTING LINES*****//
for (var s = 0; s < series.length; s++) {
    if (s != 1 && s != 2 && s != 3 && s != 4) {
        series[s].hide();
    }
}
//*****set default starting lines*****//

它完美无缺。

问题是,当我尝试在高图“饼图”中执行此操作时,它不起作用(不出错或任何事情,根本不起作用)。

我认为它的工作方式与上面相同,因为文档显示了相同的hide()方法(以及解释)。 Highcharts API Reference

这是饼图的代码:

var pieChart = $("#overallPie").highcharts(); //$("#overallPie") is the div where my Highcharts chart is rendered to.
var pieSeries = pieChart.series;

//*****SET DEFAULT STARTING SLICES*****//
for (var p = 0; p < pieSeries.length; p++) {
    if (p != 0 && p != 1) {
        pieSeries[p].hide();
    }
}
//*****set default starting slices*****//

我想你必须在饼图中以不同的方式做到这一点?我在某个地方看到你可以重绘饼图,但这真的有必要吗?

1 个答案:

答案 0 :(得分:3)

如果我正确理解了您的问题,您可以在数据系列中使用visible: false

请参阅FIDDLE此处