Fehlerbehebung bei zufälligen Fehlern beim Ändern von Serien mit JFreeChart
Einführung
Diese Diskussion befasst sich mit Problemen, die beim Versuch auftreten Aktualisieren Sie einen JFreeChart-Datensatz dynamisch, indem Sie Serien hinzufügen und entfernen. Das Ziel besteht darin, sich ändernde Datenpunkte im Laufe der Zeit zu visualisieren, ohne sich auf eine zeitbasierte X-Achse oder die Verwendung der DynamicTimeSeriesCollection zu verlassen.
Probleme und Lösungen
Die bereitgestellten Codeversuche den Datensatz durch wiederholtes Hinzufügen und Entfernen einer Reihe zu aktualisieren, aber dieser Ansatz ist falsch. Stattdessen sollte der Datensatz innerhalb der Methode „process()“ eines SwingWorkers aktualisiert werden.
Um außerdem ein Diagramm mit einer Domäne zu erstellen, die auf der Anzahl der Iterationen und nicht auf der Zeit basiert, verwenden Sie eine NumberAxis anstelle einer DateAxis.
Beispielcode
Der folgende Codeausschnitt zeigt, wie man den Fortschritt eines verfolgt Berechnung mithilfe eines Liniendiagramms:
private XYSeries series = new XYSeries("Result"); … @Override protected void process(List<Double> chunks) { for (double d : chunks) { label.setText(df.format(d)); series.add(++n, d); } }
Das Diagramm wird im Verlauf der Berechnung automatisch aktualisiert.
Zusätzliche Überlegungen
Das obige ist der detaillierte Inhalt vonWie kann ich bei dynamischen Aktualisierungen der JFreeChart-Serie ohne zeitbasierte Achse Fehler beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!