Diciamo che ho generato un grafico con il seguente codice:modificare set di dati di un grafico già costruita con Java e JFreeChart
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;
}
Ora vorrei modificare un valore precedentemente inserito in un XYSeries senza costruire un altro grafico (nessun'altra chiamata per creareXYLineChart) e rendere il grafico aggiornato automaticamente.
Come si fa?
potresti dirmi almeno un nome di metodo? – Heisenbug
'update',' updateByIndex', 'addOrUpdate'. In realtà, sembra che se vuoi cambiare la coordinata x, dovrai prima cancellare il punto con 'remove'; 'remove' può prendere il valore x o l'indice del punto della serie. – toto2
no..attualmente vorrei cambiare solo la coordinata. Penso che updateByIndex funzionerà. Grazie. – Heisenbug