
Kita menggunakan data untuk membantu memahami fenomena yang terjadi di dunia nyata. Kita mencoba menemukan pola, trend, hubungan, dan lain sebagainya, dan menggunakannya untuk menggali wawasan dan mengambil keputusan.
Salah satu sarana terpenting untuk memahami dan mengkomunikasikan informasi dari sekumpulan data adalah visualisasi. Manusia lebih cepat menangkap pola visual daripada data berupa kumpulan angka.
Visualisasi data dapat membantu kita dalam :
Matplotlib adalah salah satu pustaka (library) yang sangat populer dalam Python untuk membuat visualisasi data yang kuat dan fleksibel. Dalam artikel ini kita akan membahas tentang visualisasi data dengan Matplotlib, termasuk bagaimana menggunakan Matplotlib untuk membuat berbagai jenis grafik yang efektif.
Dalam Matplotlib, terdapat dua antarmuka yang dapat digunakan untuk membuat visualisasi data: antarmuka fungsional (functional interface) dan antarmuka berorientasi objek (object-oriented interface). Perbedaan utama antara keduanya terletak pada cara penggunaan dan pendekatan dalam membuat grafik.
Antarmuka fungsional adalah pendekatan yang lebih sederhana dan sering digunakan oleh pemula atau untuk membuat visualisasi data yang relatif sederhana. Dalam antarmuka fungsional, kita menggunakan fungsi-fungsi Matplotlib seperti plt.plot(), plt.bar(), plt.scatter(), dan sebagainya untuk membuat grafik.
Ketika kita melakukan pemanggilan fungsi plt.namafungsi(), maka kita sedang menggunakan antarmuka fungsional
Kita akan menggunakan package matplotlib dan numpy untuk membuat visualisasi. Package matplotlib.pyplot biasa disingkat dengan alias plt, dan package numpy disingkat menjadi np
import matplotlib.pyplot as plt
import numpy as npDalam contoh ini, kita menggunakan fungsi plt.plot() untuk membuat grafik garis. Kemudian kita menambahkan label sumbu menggunakan fungsi plt.xlabel(), plt.ylabel(), serta judul dan subjudul dengan fungsi plt.suptitle() dan plt.title().
x = [0, 2, 4, 6, 8, 10 ,12, 16]
y = [1, 5, 9, 13, 17, 21, 25, 33]
#ukuran plot
plt.figure(figsize=(8,5))
#menampilkan line plot
plt.plot(x, y)
#mengubah label x dan y axis
plt.xlabel("sumbu x")
plt.ylabel("sumbu y")
#menampilkan judul dan subjudul
plt.suptitle("Judul Figure")
plt.title("Subjudul")
#menampilkan plot
plt.show()
Kelebihan antarmuka fungsional:
Kekurangan antarmuka fungsional :
Selain antarmuka fungsional, kita dapat juga menggunakan objek-objek dalam matplotlib untuk menampilkan dan men-setting gambar.
3 objek utama yang perlu diketahui adalah : Figure, Axes, dan Axis
Referensi lengkap untuk objek-objek dalam matplotlib dapat dilihat di sini
Di bawah ini adalah bagian-bagian dari sebuah plot dalam matplotlib. Source untuk membuat gambar tersebut dapat dilihat di sini

Pada umumnya, objek Figure dan Axes dibuat dengan memanggil fungsi plt.subplots(), dengan syntax : fig, ax = plt.subplots()
x = np.arange(0,9)
y = 2*x - 4
#membuat objek figure dan axes
fig, ax = plt.subplots()
#plot data menggunakan object Axes
ax.plot(x, y, label="2x-4")
#set label dan judul
ax.set(
xlabel="sumbu x",
ylabel="sumbu y",
title="Subjudul")
#show grid menggunakan object Axes
ax.grid(linewidth=.2)
#menampilkan legend
ax.legend()
#set figure title
fig.suptitle('This is the figure title')
fig.align_labels()
plt.show()Kelebihan antarmuka object oriented:
Kekurangan antarmuka object oriented:
Antarmuka mana yang lebih tepat untuk kita? Jawabannya sangat bergantung pada kebutuhan dan tujuan visualisasi, serta kompleksitas grafik yang akan dibuat.
Untuk kebutuhan belajar dan membuat visualisasi yang sederhana, pyplot merupakan pilihan yang lebih sesuai. Jika kita memerlukan lebih banyak kustomisasi, menggunakan banyak komponen, tata letak yang rumit, maka antarmuka berorientasi objek adalah pilihan yang tepat.