JFreeChart combinedDomainXYPlot - 维护图的顺序

时间:2012-08-10 15:15:06

标签: java jfreechart

我想在combinedDomainXYPlot中隐藏/显示绘图,但该类只允许添加/删除绘图。例如,如果我有3个图,我删除第二个,然后添加它,在视觉上它将添加为底部的第三个图表。有没有办法在视觉上维护图表顺序?

2 个答案:

答案 0 :(得分:2)

我使用了ListSelectionModel JListJTablehereJCheckboxhere。前者具有灵活的布局,而后者具有方便的List<Plot> renderer/editor

让我们假设您的模型最终产生一个名为selected的{​​{1}}。您可以将getSubplots()列表循环到remove()所有当前图表,然后循环浏览每个选定图表的List<Plot>add()

附录:如果子图在其他方面相同,您可以add()remove()最少数量的子图并替换那些仍在使用setDataset()的模型,如图所示here。它稍微复杂一点,但可能在视觉上不那么具有破坏性。

答案 1 :(得分:0)

您可以使用AbstractRenderer.setSeriesVisible,具体取决于您使用的Renderer

这会隐藏而不是删除系列,因此订单不受影响。如果您有权访问JFreeChart演示,请查看HideSeriesDemo1以获取示例。