Dashboard WPF
Nama : Nadya Zuhria Amana
NRP : 5025211058
Kelas : PBKK A
Penggunaan LiveCharts, sebuah pustaka (library) yang memungkinkan Anda membuat grafik dan diagram yang interaktif dalam aplikasi WPF. Pada contoh ini, digunakan tiga jenis grafik berbeda: grafik garis (line chart), grafik baris bertumpuk (stacked row chart), dan grafik pie (pie chart) untuk menggambarkan data tentang penjualan buku di toko buku Gramedia dalam empat genre berbeda: comedy, romance, scifi, dan horror.
Berikut adalah penjelasan singkat tentang bagian-bagian kode dan fungsionalitasnya:
1. Import Libraries:
```csharp
using LiveCharts;
using LiveCharts.Defaults;
using LiveCharts.Wpf;
```
Ini adalah pernyataan untuk mengimpor semua library yang diperlukan dari LiveCharts.
2. Inisialisasi Window:
```csharp
public MainWindow()
{
InitializeComponent();
// ...
}
```
Ini adalah konstruktor kelas `MainWindow`, yang akan dipanggil saat jendela aplikasi dibuka. Di dalam konstruktor, kita menginisialisasi berbagai elemen grafik yang akan ditampilkan di jendela.
3. Grafik Garis (Line Chart):
```csharp
SeriesCollection = new SeriesCollection
{
// ...
};
```
Pada bagian ini, kita menginisialisasi grafik garis dengan beberapa data series. Setiap data series diwakili oleh `LineSeries`. Data ini mewakili penjualan buku dalam empat bulan (Jan, Feb, Mar, Apr, May) dan tiga series berbeda (Series 1, Series 2, Series 3) dengan nilai-nilai penjualan yang berbeda.
4. Grafik Baris Bertumpuk (Stacked Row Chart):
```csharp
PSeriesCollection = new SeriesCollection
{
// ...
};
```
Ini adalah bagian yang menginisialisasi grafik baris bertumpuk. Data ini mewakili penjualan buku dalam empat genre yang berbeda (Comedy, Romance, Horror, Scifi) dengan nilai-nilai penjualan yang berbeda. Grafik ini bertumpuk, sehingga Anda dapat melihat bagaimana penjualan total berkembang dalam berbagai genre.
5. Grafik Pie (Pie Chart):
```csharp
DSeriesCollection = new SeriesCollection
{
// ...
};
```
Pada bagian ini, kita menginisialisasi grafik pie untuk menunjukkan proporsi penjualan dalam masing-masing genre. Setiap "slice" dari grafik pie mewakili genre tertentu (Comedy, Romance, Horror, Scifi) dan proporsi penjualan dalam genre tersebut.
6. Kode untuk Interaksi dengan Pengguna:
```csharp
private void Window_MouseDown(object sender, MouseButtonEventArgs e)
{
if (e.ChangedButton == MouseButton.Left)
this.DragMove();
}
```
Ini adalah kode untuk memungkinkan pengguna untuk menggeser jendela aplikasi dengan menahan tombol kiri mouse dan menariknya.
7. DataContext:
```csharp
DataContext = this;
```
Ini adalah bagian yang menghubungkan data dari kelas `MainWindow` ke antarmuka pengguna. Ini memungkinkan Anda untuk mengikat data dari kode ke elemen-elemen grafik yang ada di antarmuka pengguna.
Dalam konteks aplikasi ini, grafik-grafik tersebut digunakan untuk menampilkan informasi tentang penjualan buku di toko Gramedia dalam empat genre berbeda. Grafik garis menggambarkan tren penjualan sepanjang waktu, grafik baris bertumpuk menunjukkan perbandingan antara genre-genre tersebut, dan grafik pie menunjukkan proporsi penjualan dalam masing-masing genre. Grafik-grafik ini dapat memberikan pemahaman visual tentang performa penjualan toko buku tersebut.