January 19, 2022
Visualisasi Data Matplotlib (Bar Chart)

Bar Chart – Visualisasi Data dengan Matplotlib

Bar Chart atau diagram batang merupakan bentuk visualisasi yang digunakan untuk membandingkan data kategorikal. Hal ini serupa dengan diagram lingkaran atau pie chart yang juga digunakan utnuk membandingkan kategori data satu sama lain. Namun, diagram lingkaran lebih spesifik untuk melihat bagaiman satu kategori data dibandingkan dengan keseluruhan data yang ada. Diagram batang tidak cocok untuk hal tersebut. Kelebihan dari diagram batang adalah dapat menampilkan lebih banyak kategori data daripada diagram lingkaran.

Pada tulisan ini akan dibahas bagaimana menampilkan visualiasi data dengan Matplotlib dalam bentuk bar chart atau diagram batang.

Import Library

Kode program berikut ini digunakan untuk melakukan import library yang akan digunakan.

import matplotlib.pyplot as plt
import pandas as pd

Mengambil data

Data yang digunakan kali ini adalah data dari monster Pokemon. Setelah data diambil maka ditambahkan 1 kolom yang bernama Count. Kolom ini berisi angka 1 yang akan digunakan untuk menghitung nantinya.

df = pd.read_csv('https://raw.githubusercontent.com/Onestringlab/notebook/main/pokemon_data.csv')
df['Count'] = 1
df.head()
Data monster Pokemon

Menyiapkan data

Diagram batang yang akan dibuat adalah mencari jumlah Type 1 dari seluruh data monster Pokemon yang ada. Langkah pertama yang dilakukan adalah melalukan grouping pada berdasarkan data Type 1. Grouping dilakukan dengan menggunakan perintah group by. Penjelasan mengenai group by dapat dilihat pada Group by Pandas DataFrame Untuk Perhitungan Data. Setelah dilakukan grouping maka langkah berikutnya adalah diurutkan berdasarkan jumlah terkecil sampai terbesar. Berikut kode programnya.

data = df.groupby(['Type 1']).count().reset_index()
data.sort_values('Count', ascending=True, inplace=True)
data.head()
Jumlah monster Pokemon berdasarkan Type 1

Membuat Bar Chart

Berikut kode program untuk membuat bar char atau diagram batang.

fig = plt.figure(figsize=(6,4))
ax = plt.axes()
ax.bar(data['Type 1'],data['Count'])
plt.xticks(rotation=90)
plt.show()
Bar Chart jumlah monster Pokemon berdasarkan Type 1
Bar Chart jumlah monster Pokemon berdasarkan Type 1

Memberi warna dan judul

Berikut ini cara memberi warna dan judul pada diagram batang.

fig = plt.figure(figsize=(6,4))
ax = plt.axes()

colors = ['#0000FF' for _ in range(len(data))]
colors[-1] = '#FF0000'

plt.ylabel('Jumlah')
plt.title('Pokemon Type 1')

ax.bar(data['Type 1'],data['Count'], color=colors)
plt.xticks(rotation=90)
plt.show()
Diagram batang dengan warna, judul dan label.

Membuat Diagram Batang Multi Kategori

Pada bagian ini akan dibuat diagram batang yang memiliki multi kategori. Diagram batang yang akan dibuat adalah untuk mengetahui berapa jumlah monster legendary pada kategorical Type 1. Visualiasi ini akan ditampilkan dalam bentuk stack atau tumpukkan dan dalam bentuk batang yang terpisah.

Menyiapkan Data

Melakukan group by dengan 2 kategori.

data = df.groupby(['Type 1', 'Legendary']).count()[['Count']].reset_index()
data = data.set_index(['Type 1', 'Legendary']).Count
data.head()
Data yang telah dilakukan goruping 2 kategori yaitu Type 1 dan Legendary

Membuat Stacked Bar Chart

data.unstack().plot(kind = 'bar', stacked = True)
Stacked Bar Chart
Stacked Bar Chart

Membuat Unstacked Bar Chart

data.unstack().plot(kind = 'bar', stacked = False)
Unstacked Bar Chart
Unstacked Bar Chart

Kesimpulan

Proses melakukan visualisasi data dalam bentuk diagram batang dengan menggunakan Matplotlib dapat dikatakan sangat mudah. Namun, tentu saja cara yang sudah dijelaskan hanya merupakan salah satu dari sekian banyak cara yang disediakan oleh Matplotlib itu sendiri terkait diagram ini. Kunjungi tautan ini untuk mengetahui tema data science lainnya.

Rajo Intan

Blogger, pemiliki Onestring Lab, menulis artikel terkait teknologi informasi dan pendidikan. Web Developer, berpengalaman lebih dari 20 tahun mengembangkan berbagai aplikasi dan sistem informasi. Kerjasama kontak di onestringlab@gmail.com atau https://forms.gle/xAGKkpi6B3BzJyzk7

View all posts by Rajo Intan →
Ads Blocker Image Powered by Code Help Pro
Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Refresh
Powered By
CHP Adblock Detector Plugin | Codehelppro