About Me

Hai, saya Rosihan Ari Yuana. Saya sehari-hari adalah mengajar di Universitas Sebelas Maret.

Bidang riset saya tentang adaptive learning, computer aided learning, dan datascience

Selain itu, saya juga seorang penulis buku dan blogger.

More about me...

  • Home
  • /
  • Data Science
  • /
  • Python Data Visualization dengan Matplotlib Bag. 2 (Histogram, Pie Plot)

Python Data Visualization dengan Matplotlib Bag. 2 (Histogram, Pie Plot)

Artikel ini adalah bagian 2 dari materi Python Data Visualization dengan Matplotlib, yang merupakan kelanjutan dari membuat plot data dengan Python sebelumnya. Pada bagian ini kita akan belajar mengenai Histogram dan Pie Plot.

Melalui artikel ini, kita akan belajar bagaimana memvisualisasikan data dengan beberapa bentuk diagram, antara lain: histogram, dan juga pie plot. Adapun untuk histogram sendiri, ada dua tipe yang nanti akan dibahas yaitu stacked histogram, dan horizontal histogram, .

Sama dengan artikel sebelumnya, langkah pertama yang perlu kita lakukan adalah membuat dataset untuk latihan. Untuk membuatnya, kita perlu mengimport Numpy dan Pandas library. Caranya adalah seperti di bawah ini.

import numpy as np
import pandas as pd

Setelah kita sudah mengimpor Numpy dan Pandas library, selanjutnya kita membuat dummy dataset dengan cara sebagai berikut.

df = pd.DataFrame(np.random.randint(-100,100,size=(100, 2)), columns=list('AB'))

Perintah di atas berarti kita membuat dataset berisi random numbers antara -100 sampai 100 sejumlah 2 kolom dan 100 baris dengan nama masing-masing kolomnya adalah A dan B. Dengan mengetikkan perintah df setelahnya, maka dataset yang baru saja kita buat akan muncul seperti di bawah ini:

Dataset untuk latihan

Setelah dataset sudah jadi, sekarang kita mulai membuat data visualization. Untuk melakukannya, kita membutukan Matplotlib library. Cara mengimpornya adalah sebagai berikut:

import matplotlib.pyplot as plt

Histogram

Histogram menampilkan berapa frekuensi sebuah nilai muncul dalam kolom. Contoh kita ingin melihat persebaran data di kolom A. Caranya adalah sebagai berikut.

plt.figure();
df['A'].plot.hist();

Dengan code di atas, akan memunculkan histogram seperti di bawah ini.

Histogram chart visualization
Histogram kolom A

Dari histogram di atas dapat kita ketahui berapa frekuensi munculnya data untuk masing masing nilai yang ada di kolom A. Contoh, kita dapat simpulkan bahwa untuk nilai 75 sampai 100, frekuensinya ada di angka 10 sampai 12.

Apabila data yang ada persebarannya banyak, mungkin akan diperlukan grid lines untuk membantu membaca histogram. Caranya adalah dengan menghilangkan code plot sebagai berikut.

df["A"].hist();

Dengan code diatas, akan memunculkan histogram seperti di bawah ini.

Histogram chart visualization
Histogram kolom A dengan grid lines

Stacked Histogram

Ketika dataset memiliki lebih dari 1 kolom, kita bisa juga membuat stacked histogram. Hal itu bisa sangat membantu karena kita bisa melihat perbandingan persebaran nilai antar kolom dalam satu data visualization. Caranya adalah sebagai berikut.

df.plot.hist(stacked=True);

Dengan code di atas, akan memunculkan histogram seperti di bawah ini.

Stacked histogram chart visualization
Stacked histogram

Histogram diatas menampilkan persebaran data di kedua kolom dalam satu data visualization. Namun ada bagian-bagian yang tertutup sehingga kita tidak bisa membacanya. Contoh, kita tidak bisa membaca persebaran data kolom A pada nilai 0 sampai -25 karena tertutup oleh visualisasi kolom B. Solusinya kita bisa mengubah transparansinya. Caranya adalah sebagai berikut.

df.plot.hist(alpha=0.5);

Dengan code di atas, akan memunculkan histogram seperti di bawah ini.

Transparent stacked histogram chart visualization
Stacked histogram dengan modifikasi transparansi

Dari histogram diatas kita dapat melihat bagian yang berwarna gelap yaitu bagian histogram yang bertumpuk antara kolom A dan B. Berbeda dengan stacked histogram sebelumnya, di atas kita dapat melihat persebaran data kolom A di nilai 0 sampai -25 yaitu frekuensinya antara 6 sampai 8.

Horizontal Histogram

Untuk memvisualisasikan perbandingan frekuensi munculnya sebuah nilai, kita mungkin diminta untuk menampilkan horizontal histogram. Hal itu juga dapat dilakukan dengan Matplotlib. Contoh jika kita ingin menampilkan horizontal histogram dari kolom A, caranya adalah sebagai berikut.

df["A"].plot.hist(orientation="horizontal");

Dengan code di atas, akan memunculkan histogram seperti di bawah ini.

Horizontal histogram chart visualization
Horizontal histogram

Data visualization jenis horizontal histogram ini sering dibutuhkan dalam eksplorasi data tertentu untuk menjabarkan nilai mana yang paling sering muncul. Seperti pada histogram di atas, nilai yang paling sering muncul adalah antara -62.5 sampai -75 yaitu sebanyak 16 kali.

Pie Plot

Selanjutnya adalah pie plot. Pie plot sering digunakan untuk memvisualisasikan persebaran antara berbagai kategori dalam satu kesatuan. Lebih tepatnya sebaran data per kategori ini dilihat sebagai sebuah proporsi dari keseluruhan data.

Sebagai contoh, kita akan membuat dataset yang berisi jumlah mahasiswa yang mengambil sebuah mata kuliah tertentu dengan cara sebagai berikut.

data = {'mata_kuliah': ['Matematika', 'Biologi', 'Kimia', 'Fisika'],
        'jumlah_mahasiswa': [8, 24, 31, 15,]}
df1 = pd.DataFrame(data)
df1

Dengan code di atas, akan memunculkan dataset sebagai berikut.

Dataset untuk latihan

Jika kita ingin membuat pie plot yang menampilkan perbandingan data jumlah mahasiswa yang mengambil tiap mata kuliah, caranya adalah sebagai berikut.

df1.plot(kind='pie', y = 'jumlah_mahasiswa', labels=df1['mata_kuliah'], legend=False)

Dengan code di atas, akan memunculkan pie plot seperti di bawah ini:

Pie plot chart visualization
Pie plot

Code yang digunakan dalam artikel ini bisa didownload di tautan di bawah ini.

Demikian artikel Python Data Visualization dengan Matplotlib Bag. 2 (Histogram, Pie Plot). Semoga bermanfaat.


Beli Buku Pemrograman

5 Langkah Mudah Menguasai React Native
Rahasia Inti Master PHP & MySQLi (Improved)
Jalan Pintas Menjadi Master React JS
Trik Kolaborasi React dengan PHP & MySQL

Article by Request

Anda belum memahami konsep pemrograman PHP Native, Python, Java, atau SQL? atau Anda belum punya ide penyelesaian dari studi kasus yang dihadapi sampai saat ini.

Silakan manfaatkan layanan Article by Request di blog ini.

Bagikan artikel ini jika bermanfaat !

Alumni dari Pendidikan Teknik Informatika dan Komputer, Universitas Sebelas Maret. Master Graduate of Computer Science and Information Engineering di National Central University, Taiwan. Sekarang bekerja sebagai Data Analyst di Teaching Excellence Center Divison, National Yunlin University of Science and Technology, Yunlin, Taiwan.

Leave a Reply