Vodič za Python Seaborn: Što je Seaborn i kako ga koristiti?



Vodič za Python Seaborn uz razliku između seaborn-a i matplotliba. Također naučite o raznim funkcijama i prilagodbama dostupnim u seaborn-u.

Python je skladište brojnih neizmjerno moćnih knjižnica i okvira. Među njima je i Pomorski, koja je dominantna vizualizacija podataka knjižnica, pružajući još jedan razlog da programeri dovrše . U ovom vodiču za Python Seaborn priklonit ćete se svim sposobnostima vizualizacije podataka koristeći Seaborn.

Prije nego što krenemo dalje, pogledajmo sve teme rasprave u ovom članku:





Pa krenimo prvo s obrazloženjem važnosti Pythona Seaborna.

Zašto koristiti Python Seaborn?

Kao što je ranije spomenuto, knjižnica Python Seaborn koristi se za olakšavanje zahtjevnog zadatka vizualizacije podataka i temelji se na njoj . Seaborn omogućuje stvaranje statističke grafike kroz sljedeće funkcionalnosti:



  • API koji se temelji na skupovima podataka koji omogućuju usporedbu između višestrukih varijable

  • Podržava mreže s više parcela koje zauzvrat olakšavaju izgradnju složenih vizualizacija

  • Dostupne univarijantne i bivarijantne vizualizacije za usporedbu između podskupina podataka



  • Dostupnost različitih paleta boja za otkrivanje različitih vrsta uzoraka

  • Procjene i parcele automatski

Dakle, ako ste se pitali zašto koristiti Seaborn kad već imate Matplotlib, evo odgovora na to.

java kako koristiti tostring

Python Seaborn vs Matplotlib:

'Ako Matplotlib' pokušava olakšati jednostavne i teške stvari ', Seaborn pokušava i dobro definirani skup teških stvari učiniti jednostavnim' - Michael Waskom (Stvoritelj Seaborna).
Zapravo, Matplotlib je dobar, ali Seaborn je bolji. U osnovi postoje dva nedostatka Matplotliba koje Seaborn otklanja:

  1. Matplotlib se može personalizirati, ali teško je shvatiti koje su postavke potrebne da bi se parcele učinile privlačnijima. S druge strane, Seaborn dolazi s brojnim prilagođenim temama i sučeljima na visokoj razini za rješavanje ovog problema.

  2. Pri radu s Pande , Matplotlib ne služi dobro kad je riječ o radu s DataFrames-ima, dok Seaborn funkcije zapravo rade na DataFrames-u.

Kako instalirati Seaborn?

Da biste instalirali knjižnicu Python Seaborn, možete koristiti sljedeće naredbe na temelju platforme koju koristite:

pip instalirati seaborn

ili

conda instalirati seaborn

Jednom kada je ovo instalirano, samo pobrinite se da instalirate pakete i knjižnice o kojima ovisi seaborn.

Instaliranje ovisnosti Python Seaborn:

Obavezne ovisnosti za morske rođene su:

Postoji i jedna preporučena ovisnost koja je:

  • državni modeli

Da biste instalirali ove knjižnice, možete koristiti iste naredbe kao što je prethodno prikazano za Seaborn s njihovim odgovarajućim imenima. Jednom instalirani, oni se mogu lako uvesti. Seaborn vam omogućuje učitavanje bilo kojeg skupa podataka iz koristiti load_dataset () funkcija. Također možete pregledati sve dostupne skupove podataka pomoću funkcije get_dataset_names () na sljedeći način:

PRIMJER:

uvesti seaborn kao sns sns.get_dataset_names ()

To će vratiti popis svih dostupnih skupova podataka.
Sad kad ste postavili svoje okruženje za rad s morskim morima, idemo dalje kako bismo vidjeli kako koristiti njegove funkcije crtanja u .

Funkcije crtanja plodova mora

Vizualizacija statističkih odnosa:

Proces razumijevanja odnosa između varijabli skupa podataka i kako ti odnosi, pak, ovise o drugim varijablama, poznat je pod nazivom statistička analiza. Pogledajmo sada dublje funkcije potrebne za ovo:

ponovna plota ():

Ovo je funkcija na razini figure koja koristi dvije druge funkcije osi za vizualizaciju statističkih odnosa, a to su:

  • raspršeni splet ()
  • linijski zaplet ()

Te se funkcije mogu specificirati pomoću parametra ‘kind’ relplot (). U slučaju da je naveden ovaj parametar, potreban je zadani parametar scatterplot (). Prije nego što započnete s pisanjem koda, uvezite potrebne knjižnice na sljedeći način:

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

Imajte na umu da je atribut stila također prilagodljiv i može poprimiti bilo koju vrijednost poput tamne rešetke, krpelja itd. O čemu ću raspravljati kasnije u odjeljku o estetici zapleta. Pogledajmo sada jedan mali primjer:

PRIMJER:

f = sns.load_dataset ('letovi') sns.relplot (x = 'putnici', y = 'mjesec', podaci = f)

IZLAZ:

Letovi1-Vodič za Python Seaborn-Edureka

Kao što vidite, točke su ucrtane u 2-dimenzije. Međutim, možete dodati još jednu dimenziju pomoću semantike 'hue'. Pogledajmo primjer istog:

PRIMJER:

f = sns.load_dataset ('letovi') sns.relplot (x = 'putnici', y = 'mjesec', hue = 'godina', podaci = f)

Vidjet ćete sljedeći izlaz:

IZLAZ:

Međutim, postoji još mnogo prilagodbi koja možete isprobati, poput boja, stilova, veličine itd. Dopustite mi da samo pokažem kako možete promijeniti boju u sljedećem primjeru:

PRIMJER:

sns.set (style = 'darkgrid') f = sns.load_dataset ('letovi') sns.relplot (x = 'putnici', y = 'mjesec', hue = 'godina', paleta = 'ch: r = - .5, l = .75 ', podaci = f)

IZLAZ:

linijski zaplet ():

Ova funkcija omogućit će vam crtanje kontinuirane crte za vaše podatke. Ovu funkciju možete koristiti mijenjanjem parametra ‘kind’ na sljedeći način:

PRIMJER:

a = pd.DataFrame ({'Dan': [1,2,3,4,5,6,7], 'Namirnice': [30,80,45,23,51,46,76], 'Odjeća' : [13,40,34,23,54,67,98], 'Pribor': [12,32,27,56,87,54,34]}, indeks = [1,2,3,4,5 , 6,7]) g = sns.relplot (x = 'Dan', y = 'Odjeća', vrsta = 'linija', podaci = a) g.fig.autofmt_xdate ()

IZLAZ:

Zadana vrijednost za linijski prikaz je y kao funkcija x. Međutim, to možete promijeniti ako to želite učiniti. Postoji još mnogo opcija koje možete isprobati dalje.

Sada pogledajmo kako ucrtati kategoričke podatke.

Crtanje s kategorijskim podacima:

Ovaj pristup dolazi do slike kada se naša glavna varijabla dalje dijeli na diskretne skupine (kategorijalne). To se može postići pomoću funkcije catplot ().

catplot ():

Ovo je funkcija na razini figure poput relplot (). Mogu je karakterizirati tri porodice funkcija razine osi, i to:

  1. Scatterplots - Uključuju strip plot (), swarmplot ()

  2. Distribucijske parcele - to su boxplot (), violinplot (), boxenplot ()

  3. Procjena parcela - naime pointplot (), barplot (), countplot ()

Uzmimo sada nekoliko primjera da to pokažemo:

PRIMJER:

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

IZLAZ:

Kao što vidite, u gornjem primjeru nisam postavio parametar 'kind'. Stoga je vratio graf kao zadani dijagram raspršenja. Možete odrediti bilo koju funkciju razine osi da biste promijenili graf po potrebi. Uzmimo primjer i ovoga:

PRIMJER:

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

IZLAZ:

Gornji izlaz prikazuje ploču violine za skup podataka savjeta. Pokušajmo sada pronaći kako vizualizirati distribuciju skupa podataka.

Vizualizacija distribucije skupa podataka:

Ovo se u osnovi bavi razumijevanjem skupova podataka s kontekstom da li je jednoznačan ili dvoznačan. Prije nego što započnete s ovim, samo uvezite sljedeće:

import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt from scipy import stats sns.set (color_codes = True)

Nakon što je to učinjeno, možete nastaviti s crtanjem univarijantne i bivarijatne distribucije.

Ucrtavanje distribucija Univariate:

Da biste ih ucrtali, možete koristiti funkciju distplot () na sljedeći način:

PRIMJER:

a = np.random.normal (loc = 5, veličina = 100, razmjera = 2) sns.distplot (a)

IZLAZ:

Kao što možete vidjeti u gornjem primjeru, nacrtali smo grafikon za varijablu a čije vrijednosti generira funkcija normal () pomoću distplot.

Ucrtavanje bivarijantnih raspodjela:

To se pojavljuje kad imate dvije slučajne neovisne varijable što rezultira nekim vjerojatnim događajem. Najbolja funkcija za crtanje ove vrste grafova je jointplot (). Nacrtajmo sada bivarijatni grafikon pomoću jointplot ().

PRIMJER:

x = pd.DataFrame ({'Dan': [1,2,3,4,5,6,7], 'Namirnice': [30,80,45,23,51,46,76], 'Odjeća' : [13,40,34,23,54,67,98], 'Pribor': [12,32,27,56,87,54,34]}, indeks = [1,2,3,4,5 , 6,7]) y = pd.DataFrame ({'Dan': [8,9,10,11,12,13,14], 'Namirnice': [30,80,45,23,51,46, 76], 'Odjeća': [13,40,34,23,54,67,98], 'Pribor': [12,32,27,56,87,54,34]}, indeks = [8,9 , 10,11,12,13,14]) srednja vrijednost, cov = [0, 1], [(1, .5), (.5, 1)] podaci = np.random.multivariate_normal (srednja vrijednost, cov, 200 ) sa sns.axes_style ('bijeli'): sns.jointplot (x = x, y = y, kind = 'kde', color = 'b')

IZLAZ:

Sad kad ste shvatili razne funkcije Pythona Seaborna, prijeđimo na izgradnju strukturiranih mreža višestrukih parcela.

Mreže s više parcela:

Python Seaborn omogućuje vam uspostavljanje više mreža usporedno. To su u osnovi grafikoni ili grafikoni koji se crtaju koristeći istu ljestvicu i osi kako bi se olakšala usporedba između njih. To, pak, pomaže programeru da brzo razlikuje parcele i dobije velike količine informacija.

Razmotrite sljedeći primjer funkcije facetgrid () za crtanje ovih grafova.

PRIMJER:

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

IZLAZ:

Gornji rezultat jasno pokazuje usporedbu savjeta koji se daju tijekom ručka i večere. Također možete crtati pomoću funkcije PairGrid kada imate par varijabli za usporedbu. Razmotrimo sljedeći primjer.

PRIMJER:

sns.set (style = 'krpelji') a = sns.load_dataset ('letovi') b = sns.PairGrid (a) b.map (plt.scatter)

IZLAZ:

Kao što vidite, gornji rezultat jasno uspoređuje godinu i broj putnika na različite načine.

Seaborn također omogućuje prilagodbe u pogledu estetike o čemu će se dalje raspravljati.

Estetika plota:

Ovaj segment tutorijala za Python Seaborn bavi se izradom naših parcela atraktivnijim i ugodnijim.

Python Seaborn Figure-Estetika:

Postavljena je prva funkcija o kojoj ću raspravljati (). I ranije sam koristio parametar ‘style’ ove funkcije. Ovaj se parametar u osnovi bavi morskim temama. Trenutno ih je dostupno pet, naime tamna mreža, krpelji, bijela mreža, bijela i tamna.

Razmotrite sljedeći primjer koji demonstrira bijelu temu.

PRIMJER:

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

IZLAZ:

U gornjem izlazu možete primijetiti da je tema promijenjena u bijelu. Možete ih dalje istraživati ​​koristeći i ostale teme. Ako primijetite u prethodnom izlazu, posvuda oko grafa nalaze se osi. Međutim, ovo je također prilagodljivo pomoću funkcije despine (). Pogledajte primjer u nastavku.

PRIMJER:

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

IZLAZ:



Obratite pažnju na razliku između prethodna dva izlaza. Međutim, postoji mnogo više opcija koje možete sami istražiti.

Palete boja Python Seaborn:

Boja je u osnovi značajka koja se približava ljudskim očima izvan bilo koje druge značajke. Seaborn vam omogućuje da se igrate bojama koristeći razne funkcije poput color_palette (), hls_palette (), husl_palette () itd. Pogledajte boje koje su trenutno prisutne u seaborn-u.

PRIMJER:

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

IZLAZ:

razlika između css i css3

Gornja slika prikazuje boje prisutne u morskom moru. Učinio sam to pomoću funkcije palplot (). Za dublje varijacije možete koristiti hls_palette (), husl_palette () itd.

To nas dovodi do kraja vodiča za Python Seaborn. Nadam se da ste sve jasno razumjeli. Obavezno vježbajte što više .

Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare na ovom blogu 'Python Seaborn Tutorial' i javit ćemo vam se što je prije moguće.

Da biste stekli detaljno znanje o Pythonu, zajedno s raznim aplikacijama, možete se prijaviti za uživo s 24/7 podrškom i doživotnim pristupom.