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:
- Zašto koristiti Seaborn?
- Kako instalirati Seaborn?
- Instaliranje Python Seaborn ovisnosti
- Funkcije crtanja plodova mora
- Mreže s više parcela
- Zaplet-estetika
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:
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.
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:
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:
Scatterplots - Uključuju strip plot (), swarmplot ()
Distribucijske parcele - to su boxplot (), violinplot (), boxenplot ()
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.