Mengemas kini Set Data JFreeChart Secara Rawak
Apabila bekerja dengan JFreeChart, ralat mungkin akan berlaku semasa cuba mengemas kini set data secara dinamik. Ralat ini selalunya berpunca daripada penyegerakan yang salah atau penggunaan komponen carta tertentu yang tidak betul.
Mengelakkan Ralat Rawak
Untuk menangani ralat ini, adalah penting untuk mengemas kini set data dari dalam process() kaedah SwingWorker. Ini memastikan bahawa perubahan disegerakkan dengan utas utama yang mengendalikan GUI. Selain itu, apabila paksi-X mewakili kiraan lelaran, adalah disyorkan untuk menggunakan NumberAxis dan bukannya DateAxis.
Pengemaskinian Carta Lanjutan
Di luar asas, ia juga boleh dilakukan untuk memplot kemajuan pengiraan pada carta garis. Ini boleh dicapai dengan menggunakan NumberAxis untuk kedua-dua paksi dan menambahkan data pada siri dalam kaedah process().
Contoh Pelaksanaan
Kod Java yang disediakan menunjukkan praktikal pelaksanaan konsep ini:
public final class ChartWorker { private XYSeries series = new XYSeries("Result"); private XYDataset dataset = new XYSeriesCollection(series); // ...code omitted
Dalam kaedah proses(), pekerja mengira dan menambah titik data pada siri:
@Override protected void process(List<Double> chunks) { for (double d : chunks) { series.add(++n, d); } }
Carta kemudiannya dikemas kini secara dinamik, memaparkan kemajuan pengiraan.
Kesimpulan
Dengan mengikuti garis panduan ini dan memanfaatkan contoh yang disediakan , pembangun boleh mengemas kini dan memuat semula set data JFreeChart dengan berkesan tanpa menghadapi ralat rawak. Ini memastikan GUI kekal responsif semasa memaparkan data masa nyata atau hasil pengiraan yang kompleks.
Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan Ralat Rawak Semasa Mengemas kini Set Data JFreeChart Secara Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!