Lompat ke konten Lompat ke sidebar Lompat ke footer

Membuat Histogram Menggunakan Matplotlib

Daftar Isi
1. Membuat Histogram Menggunakan Matplotlib
2. Plot Data dan Jumlah Bins Histogram
3. Menambahkan Judul dan Axis Label pada Matplotlib

Histrogram adalah sebuah grafik yang menampilkan data dalam bentuk bar dengan ketinggian tertentu. Sumbu x menunjukkan rentang / range data yang diplot. Sumbu y / ketinggian bar histogram menunjukkan jumlah data dalam rentang pada sumbu x.

Gambar di atas merupakan contoh histogram, yang menampilkan data dummy berupa nilai dalam sebuah kelas. Sumbu x menunjukkan rentang nilainya, sedangkan sumbu y menunjukkan jumlah siswa yang mendapat nilai tertentu.

Misalnya, terdapat 2 sisa yang mendapat nilai 40. Kemudian terdapat 1 orang yang mendapat nilai 100. Kita bisa melihat juga ternyata jumlah siswa yang memperoleh nilai 70 paling banyak, yaitu 5 orang.

Membuat Histogram Menggunakan Matplotlib

Di python, salah satu modul yang dapat digunakan untuk membuat histogram adalah pyplot yang merupakan bagian dari modul matplotlib. Cara plotnya pun sederhana. Input yang digunakan adalah sebuah 1D array yang berisi data, bisa list, numpy array, ataupun yang lain.

Selain itu, parameter yang semi wajib adalah bins. Bins adalah jumlah rentang data / bars. Kenapa semi wajib? Karena jika tidak disetting, pyplot akan secara otomatis mensetting nilainya sebesar 10. 

Bins akan mempengaruhi bentuk histogram. Penentuan bins yang tepat akan memudahkan pembacaan persebaran data.

Plot Data dan Jumlah Bins Histogram

 1   import matplotlib.pyplot as plt 
 2   
 3   data = [404050505060606060707070
 4               707080808080909090100
 5   
 6   plt.hist(data, bins = 7
 7   plt.show() 

Script python di atas adalah cara paling sederhana untuk membuat histogram. Baris 1 adalah proses import pyplot dari matplotlib. Pyplot diimport sebagai plt, sehingga segala proses plotting menggunakan variabel plt.

Baris 3 adalah data yang digunakan. Tentu saja, data contoh ini cukup sederhana, berbeda dengan data asli. Yang penting, data yang digunakan berupa 1D array, dan matplotlib pyplot akan mengurus sisanya.

Baris 6 adalah proses plot histogram, menggunakan plt.hist(). data adalah variabel berisi data yang akan diplot. Sedangkan bins adalah jumlah barnya, disini menggunakan 7 agar tampilannya seperti contoh.

Baris 7 plt.show() digunakan untuk menampilkan plot yang sudah dibuat. Ketika di run, maka akan muncul grafik seperti ini.

histogram_menggunakan_python
Histogram Menggunakan Python

Histogram yang muncul sangat sederhana. Belum ada label untuk tiap sumbu, dan belum ada judulnya.


Menambahkan Judul dan Axis Label pada Matplotlib

Untuk menambahkan label axis dan judul pada grafik matplotlib yang sudah dibuat, perlu ditambahkan beberapa baris script setelah plt.hist()

7   plt.title("Sebaran Nilai Ujian kelas X"
8   plt.xlabel("Nilai Ujian"
9   plt.ylabel("Jumlah Siswa"
10  plt.show() 

Baris 7 digunakan untuk menambahkan judul grafik. Pada script sebelumnya, baris 7 berisi plt.show(), tapi pada contoh di atas, plt.show() digeser pada baris 10. plt.show() harus diletakkan paling akhir setelah semua penyesuaian grafik dilakukan.

Kemudian secara berurutan, baris 8 dan baris 9 digunakan untuk menambahkan label pada axis x (plt.xlabel()) dan axis y (plt.ylabel()).

plt.show() pada baris ke 10 digunakan untuk menampilkan grafik yang sudah siap untuk ditampilkan. Dan ketika di-run, hasilnya seperti ini.

histogram_lengkap_judul_label
Histogram Lengkap

Demikian tadi proses pembuatan histogram menggunakan matplotlib pyplot. Cukup mudah bukan? Dengan melihat histogram, dapat diperoleh insight berdasarkan sebaran data.

3 komentar untuk "Membuat Histogram Menggunakan Matplotlib"

  1. Salam kenal mas Wahyu terima kasih informasinya sangat bermanfaat, ada yang ingin saya tanyakan bagaimana menentukan jumlah bins yang tepat?
    karena apabila secara default python hanya memberikan nilai 10 artinya parameter bins sebaiknya di set secara tepat agar tidak kurang.

    BalasHapus
    Balasan
    1. Salam kenal. Kalau jumlah bins setau saya lebih ke best practice sih mas, ga ada harus berapa gitu. Intinya kan kita pakai histogram untuk lihat persebaran data, jadi yang penting distribusinya kelihatan, naik turun grafiknya mengikuti pola tertentu lah gampangnya. Kalau terlalu sedikit bins nanti naik turun histogramnya ga kelihatan, tapi kalau terlalu banyak nanti bisa ga halus pola naik turunnya, bisa ada yang rendah banget atau tinggi banget bar nya.

      Hapus