как динамически отображать данные в 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);

Серия1 отображается на графике. Значения серии1 добавляются на каждой итерации цикла, который генерирует некоторое значение. Можно ли это сделать с помощью ожидания и уведомления? Я не совсем уверен в этих функциях. Пожалуйста помоги


person sunandan    schedule 26.02.2011    source источник


Ответы (2)


add() метод XYSeries "Добавляет элемент данных в серию и отправляет SeriesChangeEvent всем зарегистрированным слушателям". Один из подходов заключается в вызове add() с использованием javax.swing.Timer, как показано в этом примере.

person trashgod    schedule 26.02.2011

Если ваши данные вычисляются в течение периода исправления, как насчет использования DinamycTimeSeriesCollection? Они очень полезны.

Вы можете найти пример в этом вопросе, где я удалось решить проблему периодов, кратных миллисекундам.

person Maverik    schedule 28.07.2011