0

我想在 combineDomainXYPlot 中隐藏/显示图,但该类只允许添加/删除图。例如,如果我有 3 个图,我删除第二个,然后添加它,视觉上它会将其添加为底部的第三个图表。有什么方法可以直观地维护图表顺序?

4

2 回答 2

2

我会使用ListSelectionModel, 两者都可以使用JList, 显示在这里, 和JTable, 显示在这里。前者有一个灵活的布局,而后者有一个方便的JCheckbox 渲染器/编辑器

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

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

于 2012-08-12T10:31:54.513 回答
0

您可以AbstractRenderer.setSeriesVisible根据Renderer您使用的情况使用。

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

于 2012-08-10T16:34:16.070 回答