Artikel ini membagikan kode spesifik bagan garis dinamis JFREECHART untuk referensi Anda. Konten spesifiknya adalah sebagai berikut
Gambar sekali setiap detik dan gambar lagi setelah satu menit
Paket toples yang diperlukan adalah: gnujaxp.jar, jCommon-1.0.16.jar, jfreechart-1.0.13.jar
kelas publik jfreezhexiantest {public static xyseries xycpuseries = new xyseries ("cpu"); Public Static Int Ratusan = 0; public static JFreechart JFreechart = null; publik jpanel getCpujFreechart () {jFreechart = chartfactory.createxylinechart (null, null, null, createTaset1 (), plotorientation.vertikal, false, true, false); StandardCharttheme mcharttheme = StandardChartTheme baru ("CN"); mcharttheme.setlargefont (font baru ("bold", font.bold, 20)); mcharttheme.setextralargefont (font baru ("zongyi", font.plain, 15)); mcharttheme.setregularfont (font baru ("zongyi", font.plain, 15)); ChartFactory.setchartTheme (mcharttheme); jFreechart.setborderpaint (warna baru (0,204.205)); jFreechart.setborderverible (true); Xyplot xyplot = (xyplot) jfreechart.getplot (); // y-axis numberaxis numberaxis = (numberaxis) xyplot.getRangeaxis (); numberaxis.setlowerbound (0); numberaxis.setupperbound (100); numberaxis.settickunit (numberTickUnit baru (100d)); // Hanya nilai integer yang ditampilkan nomoraxis.setStandardTickUnits (numberaxis.createIntegerChunits ()); // numberaxis.setautourangeincludeszero (true); numberaxis.setlowermargin (0); // di bawah sumbu data (kiri) margin numberaxis.setMinortickmarksvisible (false); // apakah garis penanda menampilkan numberaxis.settickmarkinsidelength (0); // Panjang ke dalam tanda centang luar nilaixis.settickmarkoutsidelength (0); // Desain X-Axis numberaxis x = (numberaxis) xyplot.getDomAintaxis (); x.setautorane (true); // Secara otomatis atur rentang data sumbu data // atur nilai koordinat horizontal sendiri x.setAutoTickunitselection (false); x.settickunit (numberTickUnit baru (60d)); // Atur nilai tampilan maksimum dan nilai tampilan minimum x.setlowerBound (0); x.setupperbound (60); // Label data sumbu data: hanya menampilkan label integer x.setstandardTickUnits (numberaxis.createIntegerCickUnits ()); x.setaxisLineVisible (true); // apakah garis vertikal sumbu x menampilkan x.settickmarksvisible (false); // apakah garis penanda menampilkan rectangleinsets offset = rectangleinsets baru (0, 0, 0, 0); xyplot.setAxisOffset(offset);// The spacing between the axis and the data area xyplot.setBackgroundAlpha(0.0f);// Remove the background color of the bar chart xyplot.setOutlinePaint(null);// Remove the border// ChartPanel chartPanel = new ChartPanel(jfreechart); // chartpanel.RestoreautodomainBounds (); // Setel ulang chartpanel chartpanel x-sumbu = chartpanel baru (JFreechart, true); Return Chartpanel; } / ** * Metode ini adalah desain data * * @return * / public static xydataset createTaset1 () {xyseriesCollection xyseriesCollection = new xyseriesCollection (); xyseriescollection.addseries (xycpuseries); return xyseriesCollection; } / *** data yang dihasilkan acak* / public static void dynamicrun () {int i = 0; while (true) {double factor = math.random ()*100; ratusan = (int) faktor; jFreechart.settitle ("Ukuran CPU adalah:"+hundroud+"%"); jfreechart.gettitle (). setFont (font baru ("Microsoft Yahei", 0, 16)); // Atur judul font xycpuseries.add (i, factor); coba {thread.currentThread (); Thread.sleep (1000); } catch (InterruptedException e) {E.PrintStackTrace (); } i ++; if (i == 60) {i = 0; xycpuseries.delete (0, 59); melanjutkan; }}} public static void main (string [] args) {jfreezhexiantest jz = jFreezHexiantest (); Jframe frame = jframe baru (); frame.setsize (700, 500); frame.getContentPane (). Add (jz.getcpujFreechart (), borderlayout.center); frame.setVisible (true); frame.setLocationRelativeto (null); // Jendela terletak di tengah bingkai layar. DynamicRun (); }}Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.