**Seaborn **adalah perpustakaan visualisasi data yang dibangun di atas matplotlib dan terintegrasi erat dengan struktur data panda di Python. Visualisasi adalah bagian sentral dari Seaborn yang membantu dalam eksplorasi dan pemahaman data. Seseorang harus terbiasa dengan
lumpuh dan Matplotlib dan Panda untuk belajar tentang Seaborn. Seaborn menawarkan fungsionalitas
berikut: Ini hanya beberapa fungsi yang ditawarkan oleh Seaborn, masih banyak lagi, dan kita
dapat menjelajahi semuanya di sini . Untuk menginisialisasi library Seaborn, perintah yang digunakan adalah: Dengan menggunakan
Seaborn kita dapat memplot berbagai macam plot seperti: Untuk keseluruhan artikel ini, kami menggunakan dataset Google Playstore yang diunduh dari Kaggle . Kita dapat membandingkan plot distribusi
di Seaborn dengan histogram di Matplotlib. Keduanya menawarkan fungsi yang sangat mirip. Alih-alih plot frekuensi dalam histogram, di sini kita akan memplot perkiraan kepadatan probabilitas di sumbu y. Kami akan menggunakan **sns.distplot() **dalam kode untuk memplot grafik distribusi. Sebelum melangkah lebih jauh, pertama, mari kita akses dataset kita, #python #distribution #seaborn #scatter-plots #heatmap Seaborn adalah pustaka visualisasi
data yang dibangun di atas matplotlib dan terintegrasi erat dengan struktur data panda di Python. Visualisasi adalah bagian sentral dari Seaborn yang membantu dalam eksplorasi dan pemahaman data. Kita harus terbiasa dengan Numpy dan Matplotlib dan Pandas untuk belajar tentang Seaborn.
98 Pada artikel Kali ini kita akan Berkenalan Dengan Seaborn Python, yaitu salah satu library pada Python untuk visualisasi data. Libary ini sangat berguna ketika Anda bekerja untuk memahami suatu data yang sederhana maupun kompleks. Oleh karena itu, tunggu apalagi. Mari kita membahas mengenai Seaborn. Berkenalan Dengan SeabornSeaborn adalah library untuk membuat grafik dan statistik dengan menggunakan Python. Library ini di bangun berdasarkan library matplotlib serta terintegrasi dengan struktur data pada panda. Berikut adalah beberapa fungsi yang dapat di lakukan oleh seaborn:
Seaborn bertujuan agar visualisasi menjadi bagian penting dari proses eksplorasi dan pemahaman data. Seaborn berorientasi pada fungsi plotting berdasarkan dataset yang beroperasi pada Instalasi SeabornInstalasi Seaboard dapat dilakukan dengan dua cara yaitu: Atau jika Anda menggunakan Anaconda distribution DependenciesAda beberapa dependencies yang perlu diperhatikan sebelum menjalankan seaborn pada komputer/laptop Anda. Diantaranya:
optional:
Memulai SeabornSetelah Anda selesai menginstall Seaborn, maka saat nya untuk berkenalan dengan seaborn Python. Seaborn memiliki contoh dataset yang dapat Anda coba. Untuk memulainya silahkan eksekusi perintah ini. (Anda dapat menggunakan Jupyter notebook atau Python IDE lainnya, pada artikel ini, pada artikel ini adalah menggunakan Jupyter Notebook karena kelebihannya dapat di eksekusi pada cell dan menampilkan hasilnya pada cell dibawahnya). import seaborn as sns df = sns.load_dataset("penguins") sns.pairplot(df, hue="species") Jika Anda menggunakan Jupyter Notebook, pastikan menyalakan matplotlib mode untuk dapat
langsung melihat hasilnya. Namun, jika tidak Anda harus memanggil fungsi import matplotlib.pyplot as plt plt.show() Overview Fungsi Plot Pada SeabornSemakin sering Anda berinteraksi dan berkenalan dengan seaborn Python, maka Anda akan melihat serangkaian fungsi plot. Pada artikel selanjutnya kita akan mengeksplorasi fitur spesifik yang dapat dilakukan oleh masing-masing fungsi. Artikel ini hanya akan memperkenalkan kepada Anda mengenai berbagai jenis fungsi yang akan Anda hadapi dalam menggunakan Seaborn. Fungsi Sama Untuk Tugas SerupaPenamaan pada Seaborn adalah flat; seluruh fungsionalitas dapat di akses di dengan sederhana. Sebenarnya, kode pada Seaborn itu sendiri terstruktur secara hierarki, dengan fungsi modul untuk mencapai tujuan visualisasi serupa dengan cara yang berbeda. Pada sebagian besar dokumentasi mengenai seaborn yang telah di susun oleh para maintenernya. Maka, Anda akan menemukan nama-nama seperti "relasional", "distribusi", dan "kategorikal". Sebagai contoh, modul distribusi untuk mendefinisikan fungsi-fungsi yang memiliki spesialisasi dalam merepresentasikan distribusi data. Termasuk metode yang sudah kita kenal kenal dengan baik seperti histogram: penguins = sns.load_dataset("penguins") sns.histplot(data=penguins, x="flipper_length_mm", hue="species", multiple="stack")Berkenalan Dengan Seaborn Python - Modul Distribusi Bersamaan dengan opsi yang sama, namun mungkin kita kurang familiar, seperti pada contoh kernel density estimation : Berkenalan Dengan Seaborn Python - KDE PlotFungsi yang berada di dalam modul memiliki banyak kode yang mendasari dan menawarkan fitur serupa
yang mungkin tidak ada pada komponen lain dari library (seperti Fungsi Figure-Level vs Axes-LevelSelain dengan modul yang berbeda, ada yang dinamakan cross-cutting
classification dari fungsi Seaborn sebagai "axes-level" atau "figure-level". Contoh di atas adalah fungsi "axes-level". Fungsi ini untuk membuat plot data ke dalam satu object Sebaliknya, "figure-level" berinterface dengan matplotlib melalui objek seaborn, biasanya adala Sebagai contoh, sns.displot(data=penguins, x="flipper_length_mm", hue="species", multiple="stack")Berkenalan Dengan Seaborn Python - Displot Untuk membuat sns.displot(data=penguins, x="flipper_length_mm", hue="species", multiple="stack", kind="kde")Berkenalan Dengan Seaborn Python - Displot KDE Anda akan melihat bahwa plot figure-level sebagian besar terlihat seperti pada axes-level, namun ada beberapa perbedaan. Terutama pada penempatan posisi legenda yang berada di luar plot. Selain itu, mereka pun memiliki bentuk yang sedikit berbeda Fitur yang paling berguna pada fungsi figure-level adalah kemudahannya dalam mebuat gambar dengan banyak sub-plot.. Misalnya, dibanding menumpukkan tiga plot distribusi untuk setiap spesies penguin dalam satu sumbu yang sama, kita dapat memisahkannya dengan memplot setiap distribusi pada seluruh kolom gambar, seperti pada contoh di bawah ini: sns.displot(data=penguins, x="flipper_length_mm", hue="species", col="species")Berkenalan Dengan Seaborn Python - Multiple Subplot Fungsi figure-level membungkus axes-level, lalu meneruskan argumen kata kunci yang spesifik (seperti ukuran bin pada histogram) kepada fungsi yang mendasarinya. Ini berarti mereka cukup fleksibel, namun ada sisi negatifnya, yaitu: parameter khusus ini tidak muncul pada docstrings. Beberapa fitur mungkin sulit untuk dapat ditemukan, Anda mungkin perlu melihat d dokumentasi yang lengkap sebelum memahami bagaimana cara untuk mencapai tujuan tertentu dalam penggunaannya. Fungsi axes-level membuat plot self-containedFungsi axes-level memiliki kemampuan untuk bertindak sebagai pengganti drop-in pada fungsi yang terdapat pada matplotlib. Fungsi ini dapat menambahkan label pada sumbu dan legenda secara otomatis tanpa mengubah apa pun di luar sumbu tempat mereka ditarik. Ini berarti fungsi tersebut dapat disusun menjadi angka kompleks pada matplotlib dengan hasil yang dapat di prediksi. Fungsi axes-level memanggil secara
internal pada f, axs = plt.subplots(1, 2, figsize=(8, 4), gridspec_kw=dict(width_ratios=[4, 3])) sns.scatterplot(data=penguins, x="flipper_length_mm", y="bill_length_mm", hue="species", ax=axs[0]) sns.histplot(data=penguins, x="species", hue="species", shrink=.8, alpha=.8, legend=False, ax=axs[1]) f.tight_layout()Berkenalan Dengan Seaborn Python - Scatter Plot dan histplot Fungsi figure-levelSebaliknya, fungsi figure-level tidak dapat (dengan mudah) di buat dengan menggunakan plot lain. Secara desain, fungsi ini "memiliki" gambar mereka sendiri, termasuk inisialisasi, sehingga tidak ada disarankan untuk menggunakan fungsi figure-level dalam menggambar plot kepada sumbu yang ada. Keterbatasan ini memungkinkan fungsi figure-level untuk mengimplementasikan fitur lain seperti meletakkan legenda di luar plot. Namun demikian, ada kemungkinan untuk melampaui fungsi yang terdapat pada figure-level dengan cara mengakses sumbu matplotlib pada objek yang dikembalikan, lalu menambahkan elemen lain ke dalam plot seperti ini: import matplotlib.pyplot as plt tips = sns.load_dataset("tips") g = sns.relplot(data=tips, x="total_bill", y="tip") x = np.linspace(0, 10, 100) plt.plot(x, x + 1, linestyle='dashed', color="r")Berkenalan Dengan Seaborn Python - Figure plot dan matplotlib Menyesuaikan plot dari fungsi figure-levelFungsi figure-level menghasilkan sebuah g = sns.relplot(data=penguins, x="flipper_length_mm", y="bill_length_mm", col="sex") g.set_axis_labels("Panjang Flipper (mm)", "Panjang Bill (mm)")Berkenalan Dengan Seaborn Python- Relabelling Axis Meskipun mudah, hal ini menambahkan sedikit kerumitan, karena Anda perlu ingat bahwa metode ini bukan bagian dari API matplotlib dan hanya ada pada saat menggunakan fungsi figure-level. Menentukan ukuran gambarUntuk menambah atau mengurangi ukuran plot pada matplotlib, Anda dapat mengatur lebar dan tinggi dari seluruh gambar, baik ketika di dalam rcParams global, ketika sedang menyiapkan plot (misalnya dengan parameter Saat menggunakan fungsi figure-level, ada beberapa perbedaan utama. Pertama, fungsi itu sendiri memiliki parameter untuk mengontrol ukuran gambar. Kedua, Untuk mengilustrasikan perbedaan antara kedua pendekatan ini, berikut adalah output default dari matplotlib.pyplot.subplots() dengan satu subplot: Berkenalan Dengan Seaborn Python - Subplot kosongf, ax = plt.subplots(1, 2, sharey=True)Berkenalan Dengan Seaborn Python - 2 subplot kosong share y Sebaliknya, plot yang dibuat oleh fungsi figure-level akan berbentuk persegi. Untuk mendemonstrasikannya, mari kita membuat plot kosong dengan menggunakan g = sns.FacetGrid(penguins)Berkenalan Dengan Seaborn Python - Plot Face Grid Ketika menambahkan kolom, gambar tersebut akan menjadi lebih lebar, sehingga subplotnya akan memiliki ukuran dan bentuk yang sama: g = sns.FacetGrid(penguins, col="sex")Berkenalan Dengan Seaborn Python - Dua Kolom Face Grid Dan Anda dapat menyesuaikan ukuran dan bentuk setiap subplot tanpa memperhitungkan jumlah total baris dan kolom pada gambar: g = sns.FacetGrid(penguins, col="sex", height=3.5, aspect=.75)Berkenalan Dengan Seaborn Python - Dua kolom facegrid dengan ukuran custom Hasilnya adalah Anda dapat menetapkan variabel Kelebihan relatif dari fungsi figure-level
Selain itu, fungsi figure-level memiliki beberapa kompleksitas tambahan yang dapat membuat hal-hal menjadi lebih membingungkan bagi pemula. Namun, dengan fitur-fitur yang berbeda, memberinya keunggulan tambahan. Dokumentasi resmi tutorial dari Seaborn, sebagian besar menggunakan fungsi figure-level, karena fungsi tersebut menghasilkan plot yang lebih bersih, dan direkomendasikan untuk digunakan pada aplikasi yang lebih besar lagi. Satu situasi di mana fungsi ini bukan pilihan yang baik adalah ketika Anda perlu membuat sesuatu yang kompleks dan mandiri untuk menyusun berbagai jenis plot yang berbeda. Pada titik ini, disarankan untuk menyiapkan gambar dengan menggunakan matplotlib secara langsung dan mengisi masing-masing komponen menggunakan fungsi axis-level. Menggabungkan beberapa tampilan pada dataDua fungsi pembuatan plot yang penting pada Seaborn tidak cocok dengan skema klasifikasi yang telah di bahas pada bagian sebelumnya. Fungsi-fungsi ini, jointplot() dan pairplot() , menggunakan berbagai jenis plot dari modul yang berbeda untuk merepresentasikan berbagai aspek kumpulan data dalam satu gambar. Kedua plot terserbut adalah fungsi figure-level dan membuat gambar dengan jumlah subplot yang banyak secara default. Namun keduanya menggunakan objek yang berbeda dalam mengelola gambar: JointGrid dan PairGrid. jointplot() berfungsi untuk memplot hubungan atau distribusi gabungan dua variabel sambil menambahkan sumbu marginal yang menunjukkan distribusi univarian dari masing-masing variabel secara terpisah: sns.jointplot(data=penguins, x="flipper_length_mm", y="bill_length_mm", hue="species")Berkenalan Dengan Seaborn Python - Join plot Sama seperti hal nya pada pairplot() - Fungsi ini menggabungkan gambar gabungan dan marginal - Tidak hanya terfokus pada satu hubungan antar data, melainkan memvisualisasikan setiap kombinasi secara bersamaan. sns.pairplot(data=penguins, hue="species")Berkenalan Dengan Seaborn Python - Pair Plot Di belakang layar, fungsi ini menggunakan fungsi axes-level yang telah Anda temui pada scatterplot() dan kdeplot(). Fungsi ini pun memiliki parameter sns.jointplot(data=penguins, x="flipper_length_mm", y="bill_length_mm", hue="species", kind="hist")Berkenalan Dengan Seaborn Python - Join plot 2 KesimpulanPada artikel ini Anda telah berkenalan dengan seaborn Python, yang merupakan salah satu library yang paling sering digunakan untuk visualisasi data menggunakan Python. Anda telah mengetahui beberapa fungsi dasar pada library ini. Namun, masih banyak yang akan kita bahas pada website ini mengenai Seaborn. Oleh karena itu, tetap datangi website ini untuk mendapatkan update terbaru dan tidak terlewatkan. Referensi:Seaborn Saya seorang Engineer dan Tech Entrepreneur. Memiliki ketertarikan dalam bidang Internet of Things, data acquisition, data analytics dan visualization, machine learning, software testing,
serta web design dan development. |