我知道我可以在创建时设置我的图表的标题:在运行时更改XYSeries的关键
XYSeries series = new XYSeries("Random Data");
但如果在我的代码,我想更改标题“随机数据”在运行时的其他东西?完整的代码在这里提供:JFreeChart: XY Series Demo 3。
我知道我可以在创建时设置我的图表的标题:在运行时更改XYSeries的关键
XYSeries series = new XYSeries("Random Data");
但如果在我的代码,我想更改标题“随机数据”在运行时的其他东西?完整的代码在这里提供:JFreeChart: XY Series Demo 3。
的XYSeries
是Series
,所以你可以使用setKey()
更改名称。由于名称也是系列键,因此收听XYSeriesCollection
可能会否决此更改。一个解决方法是删除该系列,更改名称,并恢复该系列的数据集:
private XYSeriesCollection dataset;
private XYSeries series;
...
dataset.removeSeries(series);
series.setKey("Stochastic Data");
dataset.addSeries(series);
XYSeries
继承自ApplicationFrame
,其继承自JFrame
,其继承自Frame
; Frame
有一个setTitle(String title)
方法。
http://www.jfree.org/jcommon/api/org/jfree/ui/ApplicationFrame.html
你可以通过构造函数传递PARAM系列称号。你只需要修改代码:
public XYSeriesDemo3(final String title, String mySeriesTitle) {
super(title);
IntervalXYDataset dataset = createDataset(mySeriesTitle);
...
}
private IntervalXYDataset createDataset(String mySeriesTitle) {
final XYSeries series = new XYSeries(mySeriesTitle);
...
}
然后在您的主要方法:
public static void main(final String[] args) {
XYSeriesDemo3 demo = new XYSeriesDemo3("XY Series Demo 3", "my series A");
demo.pack();
RefineryUtilities.centerFrameOnScreen(demo);
demo.setVisible(true);
demo = new XYSeriesDemo3("XY Series Demo 3", "my series B");
demo.pack();
RefineryUtilities.centerFrameOnScreen(demo);
demo.setVisible(true);
}
1,因为我也经常忘记,当我更新图表更新标题。通过构造函数传递的 – trashgod