Pessoal, estou precisando atualizar dinamicamente um gráfico a cada iteração de um laço, porém o gráfico só atualiza ao final do laço.
Segue o exemplo do código.
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.StandardXYItemRenderer;
import org.jfree.chart.renderer.xy.XYItemRenderer;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
private JFreeChart panePop;
private XYSeriesCollection curvaGrafico;
private XYPlot plot;
private XYItemRenderer renderer = new StandardXYItemRenderer();
private ValueAxis domainAxis = new NumberAxis("Gerações");
private ValueAxis rangeAxis = new NumberAxis("Individuos");
public NewJFrame() {
initComponents();
curvaGrafico = new XYSeriesCollection();
plot = new XYPlot(curvaGrafico, domainAxis, rangeAxis, renderer);
panePop = new JFreeChart("Evolução", JFreeChart.DEFAULT_TITLE_FONT, plot, true);
jpanel.add(new ChartPanel(panePop));
jpanel.setPreferredSize(new java.awt.Dimension(380, 316));
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
XYSeries series2 = new XYSeries("função");
curvaGrafico.addSeries(series2);
double a = 0;
for (int i = 0; i <= 100; i++) {
a = Math.sin(i);
series2.add(i, a);
plot.setDataset(curvaGrafico);
plot.setRenderer(renderer);
}
}