假设我使用以下代码生成了一个图表:
private ChartPanel createChart(){
XYSeries series1 = new XYSeries("First");
XYSeries series2 = new XYSeries("Second");
XYSeries series3 = new XYSeries("Third");
series1.add(0.0, 5.5);
series1.add(5, 10);
series1.add(10, 5.5);
series2.add(0.0, 2);
series2.add(5, 2);
series2.add(10, 7);
series3.add(0.0, 10);
series3.add(5, 5);
series3.add(10, 6);
XYSeriesCollection dataset = new XYSeriesCollection();
dataset.addSeries(series1);
dataset.addSeries(series2);
dataset.addSeries(series3);
JFreeChart chart = ChartFactory.createXYLineChart("line chart example",
"X", "Y", dataset, PlotOrientation.VERTICAL, true, true, false);
ChartPanel chartPanel = new ChartPanel(chart);
chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
return chartPanel;
}
现在我想修改以前在XYSeries中插入的值而不构建另一个图表(没有其他调用createXYLineChart),并使图表自动更新。
这是怎么做到的?
答案 0 :(得分:1)
只需查看api。
有许多不同的方法,具体取决于您是否知道系列中元素的索引,或者您是否知道x值,但想要更改y值。 我假设图表将被重绘,因为所有方法都抛出了一个SeriesChangeEvent。