JavaFX - Grafik
Secara umum, diagram adalah representasi data secara grafis. Ada berbagai macam grafik untuk merepresentasikan data sepertiBar Chart, Pie Chart, Line Chart, Scatter Chart, dll.
JavaFX Memberikan dukungan untuk berbagai Pie Charts dan XY Charts. Grafik yang direpresentasikan pada bidang XY meliputiAreaChart, BarChart, BubbleChart, LineChart, ScatterChart, StackedAreaChart, StackedBarChart, dll.
Setiap grafik diwakili oleh kelas dan semua grafik ini milik paket javafx.scene.chart. Kelas bernamaChart adalah kelas dasar dari semua grafik di JavaFX dan XYChart adalah kelas dasar dari semua grafik yang digambar pada bidang XY.
Membuat Bagan
Untuk membuat bagan, Anda perlu -
- Tentukan sumbu grafik
- Buat instance kelas masing-masing
- Persiapkan dan berikan data ke bagan
Instansiasi Kelas Masing-masing
Untuk membuat bagan, buat instance kelasnya masing-masing. Misalnya, jika Anda ingin membuat diagram garis, Anda perlu membuat instance kelas bernamaLine sebagai berikut -
LineChart linechart = new LineChart(xAxis, yAxis);
Seperti yang diamati pada kode di atas, saat membuat instance, Anda harus meneruskan dua objek yang masing-masing mewakili sumbu X dan Y dari diagram.
Mendefinisikan Axis
Secara umum, sumbu grafik dapat diwakili oleh -
- Angka-angka seperti Populasi, Umur dan
- Kategori seperti Hari dalam Seminggu, Negara.
Di JavaFX, sumbu adalah kelas abstrak yang mewakili sumbu X atau Y. Ini memiliki dua subclass untuk mendefinisikan setiap jenis sumbu, yaituCategoryAxis dan NumberAxis seperti yang ditunjukkan pada diagram berikut -
Category Axis- Dengan membuat instance kelas ini, Anda dapat menentukan (membuat) sumbu X atau Y di mana setiap nilai mewakili kategori. Anda dapat menentukan sumbu Kategori dengan membuat instance kelas ini seperti yang ditunjukkan di bawah ini -
CategoryAxis xAxis = new CategoryAxis();
Untuk sumbu ini, Anda perlu mengatur daftar kategori dan label ke sumbu seperti yang ditunjukkan di bawah ini -
//setting the list of categories.
xAxis.setCategories(FXCollections.<String>observableArrayList
(Arrays.asList("n ame1", "name2"….)));
//Setting label to the axis
xAxis.setLabel("name of the axis ");
NumberAxis- Dengan membuat instance kelas ini, Anda dapat menentukan (membuat) sumbu X atau Y di mana setiap nilai mewakili nilai Numerik. Anda dapat menggunakan jenis Nomor apa pun dengan iniAxis, Long, Double, BigDecimal, dll. Anda dapat menentukan sumbu Angka dengan membuat instance kelas ini sebagai berikut -
//Defining the axis
NumberAxis yAxis = new NumberAxis();
//Setting labelto the axis
yAxis.setLabel("name of the axis");
Meneruskan Data ke Grafik XY
Semua diagram XY ditampilkan di sepanjang bidang XY. Untuk memplot sekumpulan titik dalam grafik, kita perlu menentukan serangkaian koordinat XY.
Itu <X,Y> kelas dari javafx.scene.chartpackage adalah kelas yang digunakan, Anda dapat mengirim data ke bagan. Kelas ini memiliki daftar seri bernama yang dapat diamati. Anda bisa mendapatkan daftar ini menggunakangetData() metode dari XYChart.Series kelas seperti yang ditunjukkan di bawah ini -
ObservableList list = series.getData();
Dimana, series adalah objek dari XYChart.Serieskelas. Anda dapat menambahkan data ke daftar ini menggunakanadd() metode sebagai berikut -
list.add(new XYChart.Data(x-axis data, y-axis data));
Kedua baris ini dapat ditulis bersama seperti yang ditunjukkan di bawah ini -
series.getData().add(new XYChart.Data(x-axis data, y-axis data));
Tabel berikut memberikan deskripsi berbagai grafik (kelas) yang disediakan oleh JavaFX -
S.No | Bagan & Deskripsi |
---|---|
1 | Pie chart Diagram lingkaran adalah representasi nilai sebagai irisan lingkaran dengan warna berbeda. Irisan ini diberi label dan nilai yang terkait dengan setiap irisan ditunjukkan dalam bagan. Di JavaFX, diagram lingkaran diwakili oleh kelas bernama PieChart. Kelas ini termasuk dalam paketjavafx.scene.chart. |
2 | Bagan Garis Bagan garis atau grafik garis menampilkan informasi sebagai rangkaian titik data (penanda) yang dihubungkan oleh segmen garis lurus. Bagan Garis menunjukkan bagaimana data berubah pada frekuensi waktu yang sama. Di JavaFX, diagram garis diwakili oleh kelas bernama LineChart. Kelas ini termasuk dalam paketjavafx.scene.chart. Dengan membuat instance kelas ini, Anda dapat membuat node LineChart di JavaFX. |
3 | Bagan Area Diagram area digunakan untuk menggambar diagram berbasis area. Ini memplot area antara rangkaian titik dan sumbu yang diberikan. Secara umum, bagan ini digunakan untuk membandingkan dua besaran. Di JavaFX, bagan Area diwakili oleh kelas bernama AreaChart. Kelas ini termasuk dalam paketjavafx.scene.chart. Dengan membuat instance kelas ini, Anda dapat membuat node AreaChart di JavaFX. |
4 | Grafik batang Diagram batang digunakan untuk merepresentasikan data yang dikelompokkan menggunakan batang persegi panjang. Panjang batang-batang ini menggambarkan nilai-nilainya. Batang pada diagram batang dapat diplot secara vertikal atau horizontal. Di JavaFX, Bagan batang diwakili oleh kelas bernama BarChart. Kelas ini termasuk dalam paketjavafx.scene.chart. Dengan membuat instance kelas ini, Anda dapat membuat node BarChart di JavaFX. |
5 | Bagan Gelembung Diagram gelembung digunakan untuk melapisi data tiga dimensi. Dimensi ketiga akan diwakili oleh ukuran (radius) gelembung. Di JavaFX, bagan gelembung diwakili oleh kelas bernama BubbleChart. Kelas ini termasuk dalam paketjavafx.scene.chart. Dengan membuat instance kelas ini, Anda dapat membuat node BubbleChart di JavaFX. |
6 | Bagan Sebar Scatterplot adalah jenis grafik yang menggunakan nilai dari dua variabel yang diplot dalam bidang Kartesius. Biasanya digunakan untuk mengetahui hubungan antara dua variabel. Di JavaFX, bagan Sebar diwakili oleh kelas bernama ScatterChart. Kelas ini termasuk dalam paketjavafx.scene.chart. Dengan membuat instance kelas ini, Anda dapat membuat node ScatterChart di JavaFX. |
7 | Bagan Area Bertumpuk Di JavaFX, bagan Area Bertumpuk diwakili oleh kelas bernama StackedAreaChart. Kelas ini termasuk dalam paket javafx.scene.chart. Dengan membuat instance kelas ini, Anda dapat membuat node StackedAreaChart di JavaFX. |
8 | Bagan Batang Bertumpuk Di JavaFX, bagan Batang Bertumpuk diwakili oleh kelas bernama StackedBarChart. Kelas ini termasuk dalam paket javafx.scene.chart. Dengan membuat instance kelas ini, Anda dapat membuat node StackedBarChart di JavaFX. |