2

我很难找到用新数据更新图表的方法。使用以下方法将数据添加到图表中:

Configuration conf = chart.getConfiguration();
conf.addSeries(series);

但是没有对应的“remove(series)”!?!因此,如果我想更新正在显示的数据并添加另一个系列,我实际上会在图表中添加另一条线(或条形图或任何我选择的可视化),这显然不是我想要/需要的。

我第一次尝试克服这个问题是获取旧数据系列并将它们从图表中删除,但getSeries()我只获得了现有系列的不可修改副本,因此该尝试以java.lang.UnsupportedOperationException.

因此我的问题是:如何说服现有图表删除所有旧数据系列?请不要告诉我,我每次都需要重新创建整个图表组件!

4

1 回答 1

4

您没有提到任何版本,但至少曾经可以从 DataSeries 本身中删除项目。因此,您可以清空并重新填充它,而不是删除该系列。设置时保存系列参考。或者,您可以例如从不可修改的列表中创建一个新的 ArrayList,在那里进行更改,然后再次设置系列(使用 setSeries,而不是 addSeries)。然后调用chart.drawChart();应该触发重新绘制。

于 2021-06-23T12:06:47.007 回答