我的图表由多个图表系列组成。我创建了一个带有按钮的自定义图例,这样用户就可以按下按钮,根据需要显示或隐藏图表系列。我已经实现了一个解决方案,其中在每次按下按钮后重新定义序列号,但这需要调用reloadData
,这是一个昂贵的操作。
如何在不调用reloadData
的情况下隐藏图表系列?我正在寻找一种只需要使用redrawChart
重新绘制图表的解决方案。
SChartSeries
对象(所有系列类型都从中继承)具有hidden
属性。可以将此属性设置为NO
或YES
以显示或隐藏序列。更改值后必须调用redrawChart
。
例如,以下方法切换图表中第一个系列的可见性:
- (IBAction)handleTogglePressed:(id)sender {
SChartSeries *series = _chart.series[0];
series.hidden = !series.hidden;
[_chart redrawChart];
}