Visualisasi Data Statistik dengan Seaborn
15 Sel • Python 3 (WebAssembly Kernel)Visualisasi Data Statistik dengan Seaborn
Setelah mempelajari Matplotlib di materi sebelumnya, pertanyaan yang sering muncul adalah:
"Kalau Matplotlib sudah bisa menggambar grafik apa saja, kenapa kita masih butuh Seaborn?"
Perbedaannya terletak pada level abstraksi dan kemudahan integrasi statistik:
- Matplotlib bekerja di tingkat dasar (low-level). Anda harus mengatur setiap detail garis, warna, jarak batang, dan legenda secara manual. Ibaratnya, Anda merakit sepeda motor dari nol menggunakan baut dan obeng.
- Seaborn adalah pustaka visualisasi tingkat tinggi (high-level) yang dibangun tepat di atas Matplotlib. Seaborn dirancang khusus untuk bekerja langsung dengan DataFrame Pandas. Dengan hanya satu baris kode pendek, Seaborn otomatis menerapkan palet warna yang modern, mengelompokkan data berdasarkan kategori, dan menghitung estimasi statistik (seperti rata-rata, distribusi probabilitas, dan interval kepercayaan).
Singkatnya: Matplotlib memberikan kebebasan kendali penuh, sedangkan Seaborn memberikan keindahan visual dan analisis statistik instan.
1. Memasang Pustaka Seaborn
Pastikan pustaka Seaborn sudah terpasang di komputer Anda sebelum memulai:
Collecting seaborn
Downloading seaborn-0.13.2-py3-none-any.whl (294 kB)
-------------------------------------- 294.9/294.9 kB 2.3 MB/s eta 0:00:00
Requirement already satisfied: numpy!=1.24.0,>=1.20 in c:\laragon\bin\python\python-3.10\lib\site-packages (from seaborn) (2.2.6)
Requirement already satisfied: pandas>=1.2 in c:\laragon\bin\python\python-3.10\lib\site-packages (from seaborn) (2.3.1)
Requirement already satisfied: matplotlib!=3.6.1,>=3.4 in c:\laragon\bin\python\python-3.10\lib\site-packages (from seaborn) (3.10.9)
Requirement already satisfied: pyparsing>=3 in c:\laragon\bin\python\python-3.10\lib\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (3.3.2)
Requirement already satisfied: contourpy>=1.0.1 in c:\laragon\bin\python\python-3.10\lib\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.3.2)
Requirement already satisfied: pillow>=8 in c:\laragon\bin\python\python-3.10\lib\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (12.2.0)
Requirement already satisfied: packaging>=20.0 in c:\laragon\bin\python\python-3.10\lib\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (25.0)
Requirement already satisfied: fonttools>=4.22.0 in c:\laragon\bin\python\python-3.10\lib\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (4.65.0)
Requirement already satisfied: cycler>=0.10 in c:\laragon\bin\python\python-3.10\lib\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (0.12.1)
Requirement already satisfied: kiwisolver>=1.3.1 in c:\laragon\bin\python\python-3.10\lib\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.5.1)
Requirement already satisfied: python-dateutil>=2.7 in c:\laragon\bin\python\python-3.10\lib\site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (2.9.0.post0)
Requirement already satisfied: pytz>=2020.1 in c:\laragon\bin\python\python-3.10\lib\site-packages (from pandas>=1.2->seaborn) (2025.2)
Requirement already satisfied: tzdata>=2022.7 in c:\laragon\bin\python\python-3.10\lib\site-packages (from pandas>=1.2->seaborn) (2025.2)
Requirement already satisfied: six>=1.5 in c:\laragon\bin\python\python-3.10\lib\site-packages (from python-dateutil>=2.7->matplotlib!=3.6.1,>=3.4->seaborn) (1.17.0)
Installing collected packages: seaborn
Successfully installed seaborn-0.13.2
[notice] A new release of pip available: 22.2.2 -> 26.2.1
[notice] To update, run: python.exe -m pip install --upgrade pip2. Setup Tema dan Menyiapkan Dataset Realistis
Seaborn memiliki fungsi sns.set_theme(style="whitegrid") yang otomatis mengubah tampilan grafik menjadi bersih, modern, dan profesional tanpa perlu mengatur font atau garis kisi satu per satu.
Mari kita siapkan contoh dataset transaksi toko daring berisi informasi kategori barang, harga, unit terjual, metode pembayaran, dan rating pembeli:
Tabel Transaksi (5 Baris Pertama):
Kategori Harga_Ribu Terjual Metode_Bayar Rating
0 Komputer 8500 15 Transfer 4.8
1 Komputer 12000 8 QRIS 4.9
2 Aksesoris 150 85 QRIS 4.5
3 Aksesoris 450 40 Cash 4.7
4 Audio 800 30 QRIS 4.33. Kekuatan Parameter hue: Membedah Data Multi-Kategori
Salah satu fitur paling dicintai di Seaborn adalah parameter hue.
Dengan parameter hue, kita bisa memecah grafik batang per kategori berdasarkan dimensi tambahan (misalnya metode pembayaran) hanya dengan mengetik hue='Metode_Bayar'. Seaborn akan otomatis membuat warna berbeda dan menyusun legendanya secara rapi:
4. Histogram & Kurva Kepadatan Probabilitas (kde=True)
Saat menganalisis variabel kontinu (seperti skor rating atau usia pelanggan), kita ingin tahu apakah data tersebut condong ke arah kanan, kiri, atau simetris di tengah.
Dengan menambahkan opsi kde=True (Kernel Density Estimate), Seaborn akan menggambar kurva mulus di atas histogram untuk memperkirakan bentuk sebaran populasinya:
5. Boxplot: Memahami Distribusi Kuartil dan Mendeteksi Outlier
Diagram Kotak Garis (Boxplot) adalah salah satu alat paling penting bagi seorang praktisi data. Dari satu kotak kecil ini, kita bisa langsung membaca lima ringkasan statistik sekaligus:
- Garis tengah di dalam kotak: Nilai Median (Q2 / kuartil tengah).
- Batas bawah & atas kotak: Kuartil 1 (Q1 - 25% data) dan Kuartil 3 (Q3 - 75% data). Kotak ini merangkum 50% data utama Anda.
- Garis kumis (whiskers): Batas rentang data wajar terendah dan tertinggi.
- Titik-titik terisolasi di luar kumis: Outlier (Nilai Pencilan), yaitu data ekstrem yang jauh berbeda dari mayoritas populasi.
C:\Users\iputu\AppData\Local\Temp\ipykernel_16124\4147858169.py:4: FutureWarning:
Passing `palette` without assigning `hue` is deprecated and will be removed in v0.14.0. Assign the `x` variable to `hue` and set `legend=False` for the same effect.
sns.boxplot(6. Scatter Plot Multi-Dimensi (Posisi, Warna, dan Ukuran)
Di Seaborn, kita bisa memvisualisasikan hingga 4 variabel sekaligus dalam satu grafik sebar (scatter plot):
- Sumbu X: Harga Barang
- Sumbu Y: Jumlah Unit Terjual
- Warna (
hue): Kategori Produk - Ukuran Titik (
size): Skor Rating
7. Heatmap Korelasi: Peta Panas Hubungan Antar Variabel Numerik
Dalam tahap Analisis Data Eksploratif (EDA) dan pembuatan model Machine Learning, langkah nomor satu yang hampir selalu dilakukan adalah memeriksa matriks korelasi antar seluruh kolom angka.
Korelasi berkisar antara -1 (berbanding terbalik sempurna) hingga +1 (berbanding lurus sempurna). Angka mendekati 0 berarti tidak ada hubungan linear.
Dengan fungsi sns.heatmap(), angka-angka korelasi ini diubah menjadi gradasi warna visual yang langsung menunjukkan variabel mana yang saling mempengaruhi: