Pythoni Seaborn'i õpetus: mis on Seaborn ja kuidas seda kasutada?



Pythoni Seaborni õpetus piki meresündinu ja matplotlibi erinevust. Tutvuge ka erinevate funktsioonidega ja kohandustega, mis on saadaval seabornis.

Python on arvukate tohutult võimsate teekide ja raamistike ladu. Nende hulgas on Seaborn, mis on domineeriv andmete visualiseerimine raamatukogu, andes programmeerijatele veel ühe põhjuse lõpetamiseks . Selles Pythoni Seaborni õpetuses toetate kõiki andmete visualiseerimise oskusi Seaborni abil.

Enne jätkamist vaatame läbi kõik selle artikli aruteluteemad:





Alustame siis kõigepealt Python Seaborni olulisuse põhjendamisest.

Miks kasutada Python Seabornit?

Nagu varem mainitud, kasutatakse Python Seaborni teeki andmete visualiseerimise keeruka ülesande hõlbustamiseks ja see põhineb . Seaborn võimaldab luua statistilist graafikat järgmiste funktsioonide kaudu:



  • API, mis põhineb andmekogumitel, mis võimaldab võrrelda mitut muutujad

  • Toetab mitme maatüki võrke, mis omakorda hõlbustavad keerukate visualiseerimiste loomist

  • Andmete alamhulkade võrdlemiseks on saadaval ühe- ja kahemõõtmelised visualiseerimised



  • Erinevate värvipalettide kättesaadavus mitmesuguste mustrite paljastamiseks

  • Hinnangud ja proovitükid automaatselt

Seega, kui mõtlesite, miks peaksite Seaborni kasutama siis, kui teil juba on Matplotlib, on siin sellele vastus.

Python Seaborn vs Matplotlib:

'Kui Matplotlib' püüab lihtsaid asju lihtsaks ja raskeks muuta võimalikuks ', siis seaborn püüab ka hästi määratletud raskete asjade komplekti lihtsaks teha - Michael Waskom (Seaborni looja).
Tegelikult on Matplotlib hea, kuid Seaborn parem. Matborotlibil on põhimõtteliselt kaks puudust, mille Seaborn parandab:

  1. Matplotlibi saab isikupärastada, kuid on keeruline välja selgitada, milliseid seadeid on vaja proovitükkide atraktiivsemaks muutmiseks. Teiselt poolt on Seabornil selle probleemi lahendamiseks arvukalt kohandatud teemasid ja kõrgetasemelisi liideseid.

  2. Töötades koos Pandad , Ei toimi Matplotlib DataFrame'ide käsitlemisel hästi, samas kui Seaborni funktsioonid töötavad tegelikult DataFrame'i abil.

Kuidas Seaborni installida?

fibonacci sarja programm jaavas

Pythoni Seaborni teegi installimiseks võite kasutada järgmisi käske vastavalt teie kasutatavale platvormile:

pip paigaldada meresündinud

või

konda paigaldada meresündinud

Kui see on installitud, installige lihtsalt need paketid ja teegid, millest meresündinud sõltuvad.

Pythoni meresündinud sõltuvuste installimine:

Kohustuslikud sõltuvused merel sündinud on:

Samuti on üks soovitatav sõltuvus, mis on:

  • olekumudelid

Nende teekide installimiseks võite kasutada Seaborni ja nende vastavate nimedega samu käske. Pärast installimist saab neid hõlpsalt importida. Seaborn võimaldab teil laadida kõiki andmekogumeid saidilt kasutades load_dataset () funktsioon. Kõiki saadaolevaid andmekogumeid saate vaadata ka funktsiooni get_dataset_names () abil järgmiselt:

NÄIDE:

importida meresündinud kui sns sns.get_dataset_names ()

See tagastab kõigi saadaolevate andmekogumite loendi.
Nüüd, kui olete loonud oma keskkonna sündidega töötamiseks, läheme edasi, et näha, kuidas seda kasutada joonestamisfunktsioonides .

Mere sündinud joonestamisfunktsioonid

Statistiliste seoste visualiseerimine:

Andmekogumi muutujate vaheliste seoste mõistmise protsessi ja seda, kuidas need seosed sõltuvad omakorda muudest muutujatest, nimetatakse statistiliseks analüüsiks. Vaatame nüüd põhjalikumalt selleks vajalikke funktsioone:

relplot ():

See on figuuri taseme funktsioon, mis kasutab statistiliste seoste visualiseerimiseks veel kahte telje funktsiooni:

  • hajuvusdiagramm()
  • jooneplot ()

Neid funktsioone saab määrata relplot () parameetri ‘kind’ abil. Kui see parameeter on antud, võtab see vaikeparameetri, mis on scatterplot (). Enne oma koodi kirjutamise alustamist importige vajalikud teegid järgmiselt:

impordi numpy kui np impordipandad kui pd impordi matplotlib.pyplot plt impordi seaborn kui sns sns.set (style = 'darkgrid')

Pange tähele, et stiili atribuut on ka kohandatav ja võib võtta mis tahes väärtuse, näiteks darkgrid, puugid jne, mida ma arutlen hiljem süžee-esteetika osas. Vaatame nüüd väikest näidet:

NÄIDE:

f = sns.load_dataset ('lennud') sns.relplot (x = 'reisijad', y = 'kuu', andmed = f)

VÄLJUND:

Lennud1-Pythoni Seaborni õpetus-Edureka

Nagu näete, joonistatakse punktid kahemõõtmelisena. Kuid saate lisada teise dimensiooni, kasutades semantikat „toon“. Vaatame sama näidet:

NÄIDE:

f = sns.load_dataset ('lennud') sns.relplot (x = 'reisijad', y = 'kuu', toon = 'aasta', andmed = f)

Näete järgmist väljundit:

VÄLJUND:

Siiski on veel palju kohandusi, mida saate proovida, näiteks värvid, stiilid, suurus jne. Lubage mul järgmises näites lihtsalt näidata, kuidas saate värvi muuta:

NÄIDE:

sns.set (style = 'darkgrid') f = sns.load_dataset ('lendud') sns.relplot (x = 'reisijad', y = 'kuu', toon = 'aasta', palett = 'ch: r = - .5, l = .75 ', andmed = f)

VÄLJUND:

jooneplot ():

See funktsioon võimaldab teil oma andmetele pideva joone tõmmata. Seda funktsiooni saate kasutada, muutes parameetrit „lahke“ järgmiselt:

NÄIDE:

a = pd.DataFrame ({'Päev': [1,2,3,4,5,6,7], 'Toidukaubad': [30,80,45,23,51,46,76], 'Riided' : [13,40,34,23,54,67,98], 'Kööginõud': [12,32,27,56,87,54,34]}, indeks = [1,2,3,4,5 , 6,7]) g = sns.relplot (x = 'päev', y = 'riided', kind = 'rida', andmed = a) g.fig.autofmt_xdate ()

VÄLJUND:

Liiniplaani vaikimisi on y funktsioonina x. Seda saab aga soovi korral muuta. Seal on veel palju võimalusi, mida saate veelgi proovida.

Vaatame nüüd, kuidas kategoorilisi andmeid koostada.

Kategooriliste andmetega joonistamine:

See lähenemine tuleb pildile siis, kui meie peamine muutuja jaguneb veel diskreetsetesse rühmadesse (kategooriline). Seda saab saavutada funktsiooni catplot () abil.

catplot ():

See on figuuri taseme funktsioon nagu relplot (). Seda saab iseloomustada kolme teljetaseme funktsioonide perekonnaga, nimelt:

  1. Hajusad jooned - nende hulka kuuluvad ribaplaan (), sülem (()

    erinevus css ja css3 vahel
  2. Jaotuskrundid - mis on boxplot (), viiulplot (), boxenplot ()

  3. Prognoositavad joonised - nimelt punktplot (), ribaplaat (), loendusplaat ()

Selle demonstreerimiseks võtame nüüd mõned näited:

NÄIDE:

impordi meresündinud kui sns import matplotlib.pyplot plt sns.set (style = 'ticks', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day', y = 'total_bill', andmed = a)

VÄLJUND:

Nagu näete, ei ole ma ülaltoodud näites määranud parameetrit ‘kind’. Seetõttu on graafiku tagastanud vaikimisi hajumisgraafikuna. Graafi muutmiseks vastavalt vajadusele saate määrata mis tahes telgede taseme funktsiooni. Võtame ka selle näite:

NÄIDE:

impordi meresündinud kui sns import matplotlib.pyplot plt sns.set (style = 'ticks', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day', y = 'total_bill', kind = 'viiul', andmed = a)

VÄLJUND:

Ülaltoodud väljund näitab vihjeplaani näpunäidete andmekogumi jaoks. Proovime nüüd leida, kuidas andmekogumi levikut visualiseerida.

Andmekogumi jaotuse visualiseerimine:

Põhimõtteliselt käsitletakse andmekogumite mõistmist kontekstis ühemuutujate või kahemõõtmelistena. Enne sellega alustamist importige lihtsalt järgmised andmed:

impordi numpy kui np impordipandad kui pd impordi meresündinud kui sns impordi matplotlib.pyplot plt-st scipy impordistatistikast sns.set (color_codes = True)

Kui see on tehtud, saate jätkata ühemuutujate ja kahemõõtmeliste jaotuste joonistamist.

Ühemuutujate jaotuste joonistamine:

Nende joonistamiseks võite kasutada funktsiooni distplot () järgmiselt:

NÄIDE:

a = np.juhuslik.normaalne (loc = 5, suurus = 100, skaala = 2) sns.distplot (a)

VÄLJUND:

Nagu näete ülaltoodud näites, oleme koostanud muutuja a graafiku, mille väärtused genereeritakse normaalfunktsiooni () abil distploti abil.

Kahemõõtmeliste jaotuste joonistamine:

See tuleb pildile, kui teil on kaks juhuslikku sõltumatut muutujat, mille tulemuseks on mingi tõenäoline sündmus. Parim funktsioon seda tüüpi graafikute joonistamiseks on jointplot (). Joonistagem nüüd kahemõõtmeline graaf, kasutades jointplot ().

NÄIDE:

x = pd.DataFrame ({'Päev': [1,2,3,4,5,6,7], 'Toidukaubad': [30,80,45,23,51,46,76], 'Riided' : [13,40,34,23,54,67,98], 'Kööginõud': [12,32,27,56,87,54,34]}, indeks = [1,2,3,4,5 , 6,7]) y = pd.DataFrame ({'Päev ': [8,9,10,11,12,13,14],' Toidukaup ': [30,80,45,23,51,46, 76], 'Riided': [13,40,34,23,54,67,98], 'Nõud': [12,32,27,56,87,54,34]}, indeks = [8,9 , 10,11,12,13,14]) keskmine, cov = [0, 1], [(1, .5), (.5, 1)] andmed = np.juhuslik.muutuja_normaalne (keskmine, cov, 200 ) koos sns.axes_style ('valge'): sns.jointplot (x = x, y = y, kind = 'kde', color = 'b')

VÄLJUND:

Nüüd, kui olete aru saanud Python Seaborni erinevatest funktsioonidest, jätkame struktureeritud mitme maatüki võrkude ehitamist.

Mitme krundi võrgud:

Python Seaborn võimaldab teil joonistada kõrvuti mitu võrku. Need on põhimõtteliselt graafikud või graafikud, mis on joonistatud sama skaala ja telgede abil, et hõlbustada nende omavahelist võrdlemist. See omakorda aitab programmeerijal proovitükkidel kiiresti vahet teha ja saada suures koguses teavet.

Nende graafikute joonistamiseks kaaluge järgmist funktsiooni facetgrid () näidet.

NÄIDE:

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

VÄLJUND:

Ülaltoodud väljund näitab selgelt lõuna- ja õhtusöögi ajal antud näpunäidete võrdlust. Samuti saate joonistada funktsiooni PairGrid abil, kui teil on võrreldavaid muutujaid. Vaatleme järgmist näidet.

NÄIDE:

sns.set (style = 'puugid') a = sns.load_dataset ('lennud') b = sns.PairGrid (a) b.map (plt.scatter)

VÄLJUND:

Nagu näete, võrreldakse ülaltoodud väljundit aasta ja reisijate arvu vahel erinevalt.

Seaborn lubab ka esteetikat kohandada, mida arutatakse edasi.

Süžee-esteetika:

See Pythoni Seaborni õpetuse segment käsitleb meie maatükkide atraktiivsemaks ja veetlevamaks muutmist.

Pythoni Seaborn joonis-esteetika:

Esimene funktsioon, mida arutan, on seatud (). Olen selle funktsiooni parameetrit ‘stiil’ varem kasutanud. See parameeter käsitleb põhiliselt meresündinud teemasid. Praegu on neist saadaval viis, nimelt tumeruudustik, puugid, valgevõrk, valge ja tume.

Vaatleme järgmist näidet, mis demonstreerib valget teemat.

NÄIDE:

kuidas stringipüüt ümber pöörata
impordi meresündinud kui sns import matplotlib.pyplot plt sns.set (style = 'white', color_codes = True) a = sns.load_dataset ('tips') sns.boxplot (x = 'day', y = 'total_bill', andmed = a)

VÄLJUND:

Ülaltoodud väljundis võite märgata, et teema on muutunud valgeks. Saate neid ka teiste teemade abil lähemalt uurida. Kui märkate eelmises väljundis, on graafi ümber teljed. Kuid seda saab kohandada ka funktsiooni despine () abil. Vaadake allpool toodud näidet.

NÄIDE:

impordi meresündinud kui sns import matplotlib.pyplot plt sns.set (style = 'white', color_codes = True) a = sns.load_dataset ('tips') sns.boxplot (x = 'day', y = 'total_bill', andmed = a) sns.despine (nihe = 10, trimmi = tõene)

VÄLJUND:



Pange tähele kahe eelmise väljundi erinevust. Siiski on palju rohkem võimalusi, mida saate ise uurida.

Pythoni Seaborn värvipaletid:

Värv on põhimõtteliselt omadus, mis läheneb inimese silmadele kaugemale mis tahes muust tunnusest. Seaborn võimaldab teil värvidega mängida, kasutades erinevaid funktsioone, näiteks color_palette (), hls_palette (), husl_palette () jne. Heitke pilk värvidele, mis praegu meresündinul esinevad.

NÄIDE:

impordi numpy kui np impordi meresündinud kui sns import matplotlib.pyplot kui plt sns.set () presentcolors = sns.color_palette () sns.palplot (presentcolors)

VÄLJUND:

Ülaltoodud pilt näitab värve, mis on meresündinud. Olen seda teinud funktsiooni palplot () abil. Sügavamate variatsioonide jaoks võite kasutada hls_palett (), husl_palett () jne.

See viib meid Pythoni Seaborni õpetuse lõppu. Loodan, et olete kõigest selgelt aru saanud. Harjutage kindlasti nii palju kui võimalik .

Kas teil on meile küsimus? Palun mainige seda selle ajaveebi “Pythoni meresündinud õpetus” kommentaaride jaotises ja võtame teiega ühendust niipea kui võimalik.

Põhjalike teadmiste saamiseks Pythoni ja selle erinevate rakenduste kohta saate registreeruda otseülekandeks 24/7 toe ja ligipääsuga kogu eluks.