背景信息
我想创建一个准动态数据集,其中包含几个不同的数据系列,这些数据系列在一定程度上共享相同的时间范围。由于我永远不知道何时需要新系列或更新旧系列,因此我正在制作一种方法,该方法采用通用条目作为名称、时间、分数将其绘制为图表。
实际问题
我注意到我无法迭代XYSeriesCollection
,这表明该类本身没有实现可迭代。我想我可以修改原始文件来实现该接口(interface),但我有点担心,因为 JFreechart 似乎是一个很棒的库,所以也许有一个很好的理由为什么没有完成实现?
摘要:
可以修改代码吗?安全吗?有人尝试过吗?它会导致库中出现一些问题吗?
是否有比编辑源(某种覆盖)更好的方法来添加行为?
不同的方法怎么样?我并不坚持我的解决方案,但是我无法更改输入数据,并且无法提前了解有关它的任何信息,除了它会在某个时刻到达并且具有相同的格式 (因为它是我知道的类的对象)
最佳答案
XYSeriesCollection#getSeries()
返回 List
即Iterable
.
XYSeriesCollection dataset = new XYSeriesCollection(…);
List<XYSeries> list = dataset.getSeries();
for (XYSeries s : list) {
//alter s as desired
}
请注意,Collection
返回的不可修改,但您可以单独更改元素。使用XYSeriesCollection
API 更改列表
本身。
关于java - JFreeChart 使 XYSeriescollection 可迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30759647/