2

我知道我可以在创建时设置图表的标题:

 XYSeries series = new XYSeries("Random Data");

但是如果在我的代码中我想在运行时将标题“随机数据”更改为其他内容怎么办?此处提供了完整代码:JFreeChart:XY 系列演示 3

4

3 回答 3

3

AnXYSeries是 a Series,因此您可以使用它setKey()来更改名称。因为名字也是系列的关键,听者XYSeriesCollection可能会否决改变。一种解决方法是删除系列、更改名称并将系列恢复到数据集:

private XYSeriesCollection dataset;
private XYSeries series;
...
dataset.removeSeries(series);
series.setKey("Stochastic Data");
dataset.addSeries(series);

图片

于 2013-04-17T02:38:04.310 回答
1

您可以通过构造函数参数传递系列标题。你只需要修改代码:

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);

    }
于 2013-04-16T18:28:12.157 回答
1

XYSeries继承自ApplicationFrame哪个继承自JFrame哪个继承自FrameFramesetTitle(String title)方法。

http://www.jfree.org/jcommon/api/org/jfree/ui/ApplicationFrame.html

于 2013-04-16T18:25:24.830 回答