如何在jfreechart中动态显示数据

时间:2011-02-26 14:11:02

标签: jfreechart

我创建了一个处理某些值的函数。 现在,我的问题是我创建的图表显示了在计算完所有值之后生成的值。我想生成图形,以便计算数据的时间和时间;它必须绘制在数据上。 图表中数据的计算和显示必须平行显示。 我已将图形生成为:

 dataset.addSeries(series1); 
 dataset = new XYSeriesCollection();

 series1 = new XYSeries("% ERROR");
 chart = ChartFactory.createXYLineChart("Percent Error", "Number of Records", "% Error", dataset,PlotOrientation.VERTICAL,true, true, true);
 chart.setBackgroundPaint(Color.WHITE);
 frame = new ChartFrame("Error graph", chart);
 frame.pack();
 frame.setVisible(true);

在图表上绘制了series1。在循环的每次迭代中都会添加series1中的值,从而生成一些值。 可以使用wait和notify来完成吗?我不太确定这个功能。请帮忙

2 个答案:

答案 0 :(得分:1)

XYSeries的{​​{3}}方法“向系列添加数据项,并向所有已注册的侦听器发送SeriesChangeEvent。”一种方法是使用javax.swing.Timer调用add(),如此add()所示。

答案 1 :(得分:0)

如果您的数据是在修复期内计算的,那么使用DinamycTimeSeriesCollection会怎么样? 它们非常有用。

你可以在这个question中找到一个例子,在那里我遇到了一个多个毫秒的周期问题。