Visualisasi Dengan Pandas - Line Chart

pandas-line-chart

Pandas DataFrame menyediakan fungsi untuk memvisualisasikan data berbentuk line chart atau diagram garis. Line chart biasanya digunakan untuk mengeksplorasi tren dan perubahan dalam deret waktu.

Line chart memungkinkan kita untuk melihat pola, tren naik atau turun, dan fluktuasi data. Sebagai contoh dalam data keuangan, line chart sering digunakan untuk memperlihatkan perubahan harga saham atau pendapatan dari waktu ke waktu.

Dalam artikel ini, kita akan melihat bagaimana menggunakan Pandas untuk membuat line chart dan menganalisis tren data.

 

Membuat Line Chart dengan Pandas

Sebelumnya kita persiapkan datasetnya terlebih dahulu. Dataset sederhana ini adalah dataset mengenai suhu rata-rata di Jakarta dan Jawa Barat.

import pandas as pd
import matplotlib.pyplot as plt

hour_id = [ '110700' , '110706' , '110712' , '110718',
            '110800' , '110806' , '110812' , '110818',
            '110900' , '110906' , '110912' , '110918'
          ]

jakarta    = [ 27, 33, 28, 25, 28, 33, 29, 26, 27, 30, 27, 25 ]
jawa_barat = [ 22, 33, 23, 20, 22, 33, 22, 19, 22, 29, 21, 18 ]

# dictionary of lists
dict = {'hour_id': hour_id, 'jakarta': jakarta, 'jawa_barat': jawa_barat}

df_temp = pd.DataFrame(dict)

 

Dataset tersebut memiliki 3 kolom, yaitu hour_id, jakarta, jawa_barat. hour_id memiliki format [bulan][tanggal][jam]. Misalkan 110700, ini berarti tanggal 7 November jam 00 atau 24. Untuk kolom jakarta dan jawa_barat berisi temperatur rata-rata. Berikut dataset yang kita buat

df_temp
+---------+---------+------------+
| hour_id | jakarta | jawa_barat |
+---------+---------+------------+
|   10700 |      27 |	      22 |
|  110706 |      33 |         33 |
|  110712 |      28 |         23 |
|  110718 |      25 |         20 |
|  110800 |      28 |         22 |
|  110806 |      33 |         33 |
|  110812 |      29 |         22 |
|  110818 |      26 |         19 |
|  110900 |      27 |         22 |
|  110906 |      30 |         29 |
|  110912 |      27 |         21 |
|  110918 |      25 |         18 |
+---------+---------+------------+

 

Pandas menyediakan metode .plot.line() yang memudahkan kita untuk membuat line chart dari data yang terkandung dalam DataFrame.

pandas-line-chart-02

 

Parameter x dan y mengidentifikasi kolom DataFrame yang akan digunakan sebagai sumbu x dan y.

 

Multi Line Chart Pada Fungsi plot.line

Untuk memvisualisasikan lebih dari satu line chart, kita dapat memberikan nilai pada parameter yang berupa list dari kolom-kolom yang akan ditampilkan

df_temp.plot.line(x='hour_id', y=['jakarta', 'jawa_barat'])
pandas-line-chart

 

Hal ini sering dilakukan untuk melihat relasi trend antar variabel

Untuk menampilkan multi line chart secara terpisah, kita dapat menggunakan parameter subplots yang diberi nilai True

df_temp.plot.line(x='hour_id', y=['jakarta', 'jawa_barat'], subplots = True)

 

Label dan Judul Grafik Pada Pandas Bar Chart

Sama seperti pada bar chart, untuk memberikan judul dan label pada sumbu x dan y dapat menggunakan parameter berikut:

  •     xlabel : digunakan untuk memberi label pada sumbu x
  •     ylabel : digunakan untuk memberi label pada sumbu y
  •     title : digunakan untuk memberi judul pada grafik

 

df_temp.plot.line(x='hour_id', y='jakarta',
                  title='Trend Suhu Kota Jakarta Bulan November 2023',
                  xlabel='Waktu',
                  ylabel='Suhu/Temperatur'
                  );
pandas-line-chart

 

 

Pengaturan Warna Pada Pandas Line Chart

Parameter color digunakan untuk pengaturan warna sesuai dengan yang dikehendaki. Pengaturan menggunakan parameter color adalah cara yang paling sederhana untuk pengaturan warna. Kita cukup memberi nilai dengan nama warna yang sesuai.

df_temp.plot.line(x='hour_id', y='jakarta',
                  color='slategrey'
pandas-line-chart

 

 

Untuk penamaan warna dapat mengacu pada dokumentasi matplotlib disini

 

Pengaturan lainnya

Beberapa parameter yang mungkin akan sering digunakan untuk melakukan pengaturan line chart pada pandas

  •     figsize=(p,t) : digunakan untuk pengaturan ukuran chart dalam satuan inchi
  •     grid : jika diberi nilai True, maka akan tergambar garis bantu atau grid
  •     marker : untuk memberikan tanda pada line chart, misalkan 'o' untuk titik
  •     linewidth : digunakan untuk menentukan ketebalan garis
  •     linestyle : digunakan untuk merubah bentuk garis, misalkan '--' maka garis akan ditampilkan terputus-putus
df_temp.plot.line(x='hour_id', y='jakarta',
                  title='Trend Suhu Kota Jakarta Bulan November 2023',
                  xlabel='Waktu',
                  ylabel='Suhu/Temperatur',
                  color= 'lightgreen',
                  figsize= (8, 4),
                  grid = True,
                  marker='o',
                  linewidth=1,
                  linestyle='--'
                  );
pandas-line-chart

 

Warpping Up

Pandas memberikan banyak kemudahan dalam memvisualisasikan DataFrame. Banyak visualisasi lain yang bisa dilakukan dengan fungsi plot pada Pandas. Berikut list lengkapnya:

  •     plot.area()
  •     plot.bar()
  •     plot.barh()
  •     plot.box()
  •     plot.hexbin()
  •     plot.hist()
  •     plot.kde()
  •     plot.density()
  •     plot.line()
  •     plot.pie()
  •     plot.scatter()

 

Artikel selengkapnya mengenai Visualisasi Data Dengan Pandas: