Tutorial Python Seaborn: Apa itu Seaborn dan Bagaimana Menggunakannya?



Tutorial Python Seaborn sepanjang perbezaan antara laut dan matplotlib. Pelajari juga tentang pelbagai fungsi dan penyesuaian yang terdapat di seaborn.

Python adalah gudang dari banyak perpustakaan dan kerangka kerja yang sangat hebat. Antaranya, adalah Laut Laut, yang dominan visualisasi data perpustakaan, memberikan satu lagi sebab untuk pengaturcara selesai . Dalam Tutorial Python Seaborn ini, anda akan menggunakan semua visualisasi data dengan menggunakan Seaborn.

Sebelum meneruskan, mari kita lihat semua topik perbincangan dalam artikel ini:





Oleh itu, mari kita mulakan terlebih dahulu dengan memikirkan kepentingan Python Seaborn.

Mengapa menggunakan Python Seaborn?

Seperti disebutkan sebelumnya, perpustakaan Python Seaborn digunakan untuk meringankan tugas visualisasi data yang mencabar dan berdasarkan . Seaborn membolehkan pembuatan grafik statistik melalui fungsi berikut:



  • API yang berdasarkan pada set data yang memungkinkan perbandingan antara beberapa pemboleh ubah

  • Menyokong grid pelbagai plot yang seterusnya memudahkan visualisasi kompleks

  • Visualisasi univariate dan bivariate tersedia untuk membandingkan antara subkumpulan data



  • Ketersediaan palet warna yang berbeza untuk mendedahkan pelbagai jenis corak

  • Anggaran dan petak secara automatik

Oleh itu, jika anda tertanya-tanya mengapa menggunakan Seaborn ketika anda sudah mempunyai Matplotlib, berikut adalah jawapannya.

Python Seaborn vs Matplotlib:

'Sekiranya Matplotlib' berusaha membuat perkara mudah menjadi mudah dan perkara sukar mungkin ', seaborn cuba membuat sekumpulan perkara sukar yang mudah juga mudah' - Michael Waskom (Pencipta Seaborn).
Sebenarnya, Matplotlib baik tetapi Seaborn lebih baik. Pada dasarnya terdapat dua kekurangan Matplotlib yang diperbaiki oleh Seaborn:

  1. Matplotlib dapat diperibadikan tetapi sukar untuk mengetahui tetapan apa yang diperlukan untuk menjadikan plot lebih menarik. Sebaliknya, Seaborn hadir dengan banyak tema yang disesuaikan dan antara muka tahap tinggi untuk menyelesaikan masalah ini.

  2. Semasa bekerja dengan Panda , Matplotlib tidak berfungsi dengan baik ketika berurusan dengan DataFrames, sementara fungsi Seaborn sebenarnya berfungsi pada DataFrames.

Bagaimana hendak memasang Seaborn?

Untuk memasang perpustakaan Python Seaborn, anda boleh menggunakan arahan berikut berdasarkan platform yang anda gunakan:

pip pasang laut

atau

conda pasang laut

Setelah ini dipasang, pastikan anda memasang pakej dan perpustakaan yang bergantung pada laut.

Memasang Pergantungan Python Seaborn:

Pergantungan mandatori untuk laut adalah:

Terdapat satu kebergantungan yang disyorkan juga:

  • model negara

Untuk memasang perpustakaan ini, anda boleh menggunakan arahan yang sama seperti yang ditunjukkan sebelumnya untuk Seaborn dengan nama masing-masing. Setelah dipasang, ia dapat diimport dengan mudah. Seaborn membolehkan anda memuatkan sebarang set data dari menggunakan muat_dataset () fungsi. Anda juga dapat melihat semua set data yang tersedia menggunakan fungsi get_dataset_names () seperti berikut:

CONTOH:

import seaborn sebagai sns sns.get_dataset_names ()

Ini akan mengembalikan senarai semua set data yang ada.
Sekarang setelah anda mengatur persekitaran anda untuk bekerja dengan seaborn, mari kita bergerak lebih jauh untuk melihat bagaimana menggunakannya berfungsi merancang .

Fungsi Merancang Laut

Menggambarkan Hubungan Statistik:

Proses memahami hubungan antara pemboleh ubah set data dan bagaimana hubungan ini, pada gilirannya, bergantung pada pemboleh ubah lain dikenali sebagai analisis statistik. Mari kita lihat lebih mendalam fungsi yang diperlukan untuk ini:

penempatan semula ():

Ini adalah fungsi tahap-angka yang menggunakan dua fungsi paksi lain untuk Memvisualisasikan Hubungan Statistik yang:

  • plot bersepah()
  • petak linen ()

Fungsi-fungsi ini dapat ditentukan menggunakan parameter 'kind' dari relplot (). Sekiranya parameter ini diberikan, diperlukan parameter lalai yaitu scatterplot (). Sebelum anda mula menulis kod anda, pastikan untuk mengimport perpustakaan yang diperlukan seperti berikut:

import numpy sebagai np import panda sebagai pd import matplotlib.pyplot sebagai plt import seaborn sebagai sns sns.set (style = 'darkgrid')

Harap maklum bahawa atribut gaya juga dapat disesuaikan dan dapat mengambil nilai seperti darkgrid, tick, dll yang akan saya bincangkan kemudian di bahagian plot-estetika. Mari kita lihat contoh kecil:

CONTOH:

f = sns.load_dataset ('flight') sns.relplot (x = 'penumpang', y = 'bulan', data = f)

PENGELUARAN:

Penerbangan1-Python Seaborn Tutorial-Edureka

Seperti yang anda lihat, titik-titik diplotkan dalam 2 dimensi. Namun, anda boleh menambahkan dimensi lain menggunakan semantik ‘rona’. Mari kita lihat contoh yang sama:

CONTOH:

f = sns.load_dataset ('Flights') sns.relplot (x = 'penumpang', y = 'bulan', rona = 'tahun', data = f)

Anda akan melihat output berikut:

PENGELUARAN:

Walau bagaimanapun, terdapat banyak lagi penyesuaian yang boleh anda cuba seperti warna, gaya, ukuran, dan lain-lain. Mari saya tunjukkan bagaimana anda boleh menukar warna dalam contoh berikut:

CONTOH:

sns.set (style = 'darkgrid') f = sns.load_dataset ('Flights') sns.relplot (x = 'penumpang', y = 'bulan', hue = 'tahun', palet = 'ch: r = - .5, l = .75 ', data = f)

PENGELUARAN:

lineplot ():

Fungsi ini akan membolehkan anda melukis garis berterusan untuk data anda. Anda dapat menggunakan fungsi ini dengan mengubah parameter 'kind' seperti berikut:

CONTOH:

a = pd.DataFrame ({'Day': [1,2,3,4,5,6,7], 'Grocery': [30,80,45,23,51,46,76], 'Pakaian' : [13,40,34,23,54,67,98], 'Peralatan': [12,32,27,56,87,54,34]}, indeks = [1,2,3,4,5 , 6,7]) g = sns.relplot (x = 'Day', y = 'Clothes', kind = 'line', data = a) g.fig.autofmt_xdate ()

PENGELUARAN:

Lalai untuk lineplot adalah y sebagai fungsi x. Walau bagaimanapun, ia boleh diubah jika anda mahu melakukannya. Terdapat banyak lagi pilihan yang boleh anda cuba lagi.

Sekarang mari kita lihat bagaimana merancang data kategori.

Memplot dengan Data Kategorik:

Pendekatan ini menjadi gambaran apabila pemboleh ubah utama kami dibahagikan lagi kepada kumpulan diskrit (kategori). Ini dapat dicapai dengan menggunakan fungsi catplot ().

catplot ():

Ini adalah fungsi tahap-angka seperti relplot (). Ia dapat dicirikan oleh tiga keluarga fungsi tahap sumbu iaitu:

  1. Plot Penyebaran - Ini termasuk plotplot (), swarmplot ()

  2. Plot Pengedaran - yang merupakan boxplot (), violinplot (), boxenplot ()

  3. Estimateplots - iaitu pointplot (), barplot (), countplot ()

Mari kita ambil beberapa contoh untuk menunjukkan ini:

CONTOH:

import seaborn sebagai sns import matplotlib.pyplot sebagai plt sns.set (style = 'ticks', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day', y = 'total_bill', data = a)

PENGELUARAN:

Seperti yang anda lihat, dalam contoh di atas saya belum menetapkan parameter 'jenis'. Oleh itu ia telah mengembalikan grafik sebagai sebaran penyebaran lalai. Anda boleh menentukan fungsi tahap sumbu untuk mengubah grafik mengikut keperluan. Mari kita ambil contoh ini juga:

CONTOH:

import seaborn sebagai sns import matplotlib.pyplot sebagai plt sns.set (style = 'ticks', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day', y = 'total_bill', jenis = 'biola', data = a)

PENGELUARAN:

Output di atas menunjukkan plot biola untuk set data petua. Sekarang mari kita cuba mencari cara membayangkan penyebaran set data.

Menggambarkan pengedaran set data:

Ini pada asasnya berkaitan dengan memahami set data dengan konteks untuk menjadi univariate atau bivariate. Sebelum memulakannya, cukup import perkara berikut:

import numpy sebagai np import panda sebagai pd import seaborn sebagai sns import matplotlib.pyplot sebagai plt dari scipy import stats sns.set (color_codes = True)

Setelah ini selesai, anda boleh terus merancang pembahagian univariate dan bivariate.

Merancang pengagihan Univariate:

Untuk memplotnya, anda boleh menggunakan fungsi distplot () seperti berikut:

CONTOH:

a = np.random.normal (loc = 5, size = 100, scale = 2) sns.distplot (a)

PENGELUARAN:

Seperti yang anda lihat dalam contoh di atas, kami telah memetakan grafik untuk pemboleh ubah yang nilainya dihasilkan oleh fungsi normal () menggunakan distplot.

Merancang pengagihan bivariate:

Ini menjadi gambaran apabila anda mempunyai dua pemboleh ubah bebas rawak yang menghasilkan beberapa kemungkinan peristiwa. Fungsi terbaik untuk memplot grafik jenis ini ialah plot bersama (). Mari kita buat graf bivariate menggunakan jointplot ().

CONTOH:

x = pd.DataFrame ({'Day': [1,2,3,4,5,6,7], 'Grocery': [30,80,45,23,51,46,76], 'Pakaian' : [13,40,34,23,54,67,98], 'Peralatan': [12,32,27,56,87,54,34]}, indeks = [1,2,3,4,5 , 6,7]) y = pd.DataFrame ({'Day': [8,9,10,11,12,13,14], 'Grocery': [30,80,45,23,51,46, 76], 'Pakaian': [13,40,34,23,54,67,98], 'Peralatan': [12,32,27,56,87,54,34]}, indeks = [8,9 , 10,11,12,13,14]) mean, cov = [0, 1], [(1, .5), (.5, 1)] data = np.random.multivariate_normal (min, cov, 200 ) dengan sns.axes_style ('white'): sns.jointplot (x = x, y = y, kind = 'kde', color = 'b')

PENGELUARAN:

Sekarang setelah anda memahami pelbagai fungsi di Python Seaborn, mari kita terus membina grid pelbagai plot berstruktur.

Grid Pelbagai Plot:

Python Seaborn membolehkan anda merancang beberapa grid bersebelahan. Ini pada asasnya plot atau grafik yang diplot menggunakan skala dan paksi yang sama untuk membantu perbandingan antara keduanya. Ini, seterusnya, membantu pengaturcara untuk membezakan antara plot dengan cepat dan memperoleh sejumlah besar maklumat.

Pertimbangkan contoh fungsi facetgrid () berikut untuk memplot grafik ini.

CONTOH:

sns.set (style = 'darkgrid') a = sns.load_dataset ('iris') b = sns.FacetGrid (a, col = 'species') b.map (plt.hist, 'sepal_length')

PENGELUARAN:

Hasil di atas jelas menunjukkan perbandingan antara petua yang diberikan semasa Makan Tengahari dan Makan Malam. Anda juga boleh membuat plot menggunakan fungsi PairGrid apabila anda mempunyai sepasang pemboleh ubah untuk dibandingkan. Pertimbangkan contoh berikut.

CONTOH:

buat contoh ec2 dari snapshot
sns.set (style = 'ticks') a = sns.load_dataset ('Flights') b = sns.PairGrid (a) b.map (plt.scatter)

PENGELUARAN:

Seperti yang anda lihat, output di atas jelas membandingkan antara tahun dan jumlah penumpang dengan cara yang berbeza.

Seaborn juga membolehkan penyesuaian mengenai estetika yang dibincangkan lebih lanjut.

Plot-Estetika:

Segmen tutorial Python Seaborn ini menjadikan plot kami lebih menarik dan menggembirakan.

Python Seaborn Figure-Estetika:

Fungsi pertama yang akan saya bincangkan adalah ditetapkan (). Saya telah menggunakan parameter 'gaya' fungsi ini sebelumnya. Parameter ini pada dasarnya berkaitan dengan tema laut. Pada masa ini, terdapat lima daripadanya iaitu darkgrid, tick, whitegrid, white dan dark.

Pertimbangkan contoh berikut yang menunjukkan tema putih.

CONTOH:

import seaborn sebagai sns import matplotlib.pyplot sebagai plt sns.set (style = 'white', color_codes = True) a = sns.load_dataset ('tips') sns.boxplot (x = 'day', y = 'total_bill', data = a)

PENGELUARAN:

Dalam output di atas, anda dapat melihat tema diubah menjadi putih. Anda boleh menerokainya lebih jauh dengan menggunakan tema lain juga. Sekiranya anda melihat pada output sebelumnya, terdapat sumbu yang terdapat di sekitar grafik. Walau bagaimanapun, ini juga dapat disesuaikan menggunakan fungsi despine (). Lihat contoh di bawah.

CONTOH:

import seaborn sebagai sns import matplotlib.pyplot sebagai plt sns.set (style = 'white', color_codes = True) a = sns.load_dataset ('tips') sns.boxplot (x = 'day', y = 'total_bill', data = a) sns.despine (offset = 10, trim = True)

PENGELUARAN:



Perhatikan perbezaan antara dua output sebelumnya. Walau bagaimanapun, terdapat banyak lagi pilihan yang boleh anda cari sendiri.

Palet Warna Python Seaborn:

Warna pada dasarnya adalah ciri yang mendekati mata manusia melebihi ciri lain. Seaborn membolehkan anda bermain dengan warna menggunakan pelbagai fungsi seperti color_palette (), hls_palette (), husl_palette (), dan lain-lain. Lihatlah warna yang ada sekarang di dalam laut.

CONTOH:

import numpy sebagai np import seaborn sebagai sns import matplotlib.pyplot sebagai plt sns.set () presentcolors = sns.color_palette () sns.palplot (presentcolors)

PENGELUARAN:

Gambar di atas menunjukkan warna yang terdapat di dasar laut. Saya telah melakukannya dengan menggunakan fungsi palplot (). Untuk variasi yang lebih mendalam, anda boleh menggunakan hls_palette (), husl_palette (), dll.

Ini membawa kita ke akhir Python Seaborn Tutorial. Saya harap anda telah memahami semuanya dengan jelas. Pastikan anda berlatih sebanyak mungkin .

Ada soalan untuk kami? Sila sebutkan di bahagian komen blog 'Python Seaborn Tutorial' ini dan kami akan menghubungi anda secepat mungkin.

Untuk mendapatkan pengetahuan mendalam tentang Python bersama dengan pelbagai aplikasinya, anda boleh mendaftar secara langsung dengan sokongan 24/7 dan akses seumur hidup.