„Python Seaborn“ mokymo programa: kas yra „Seaborn“ ir kaip ją naudoti?



„Python Seaborn“ pamoka pagal skirtumą tarp jūrinio ir matplotlibo. Taip pat sužinokite apie įvairias funkcijas ir pritaikymus, kuriuos gali atlikti „seaborn“.

„Python“ yra daugybės nepaprastai galingų bibliotekų ir sistemų sandėlis. Tarp jų yra Seaborn, kuris yra dominuojantis duomenų vizualizavimas biblioteka, suteikdama dar vieną priežastį programuotojams užbaigti . Šioje „Python Seaborn“ mokymo programoje jūs naudosite visus duomenų vizualizavimo trūkumus naudodamiesi „Seaborn“.

Prieš eidami toliau, apžvelkime visas šio straipsnio aptarimo temas:





Taigi pirmiausia pradėkime nuo Python Seaborn svarbos.

Kodėl naudoti Python Seaborn?

Kaip minėta anksčiau, „Python Seaborn“ biblioteka naudojama palengvinti sudėtingą duomenų vizualizavimo užduotį ir ji yra pagrįsta . „Seaborn“ leidžia kurti statistinę grafiką naudojant šias funkcijas:



  • API, pagrįsta duomenų rinkiniais, leidžiančiais palyginti kelis kintamieji

  • Palaiko kelių sklypų tinklelius, kurie savo ruožtu palengvina sudėtingų vizualizacijų kūrimą

  • Galimos vieno ir dviejų variantų vizualizacijos, skirtos palyginti duomenų pogrupius



  • Skirtingų spalvų paletės, kad būtų galima atskleisti įvairius raštus

  • Sąmatos ir siužetai automatiškai

Taigi, jei jums kilo klausimų, kodėl verta naudoti „Seaborn“, kai jau turite „Matplotlib“, čia yra atsakymas į jį.

„Python Seaborn“ ir „Matplotlib“:

„Jei Matplotlibas„ stengiasi, kad lengvus dalykus būtų lengva ir sunku padaryti “,„ Seaborn “bando padaryti gerai apibrėžtą sunkių dalykų rinkinį“ - Michaelas Waskomas („Seaborn“ kūrėjas).
Tiesą sakant, „Matplotlib“ yra geras, bet „Seaborn“ - geresnis. Iš esmės yra du „Matplotlib“ trūkumai, kuriuos Seaborn pašalina:

  1. „Matplotlib“ galima pritaikyti individualiai, tačiau sunku išsiaiškinti, kokie nustatymai reikalingi, kad siužetai būtų patrauklesni. Kita vertus, „Seaborn“ pateikia daugybę pritaikytų temų ir aukšto lygio sąsajų šiai problemai išspręsti.

  2. Dirbdamas su Pandos , „Matplotlib“ nėra gerai, kai reikia tvarkyti „DataFrames“, o „Seaborn“ funkcijos iš tikrųjų veikia „DataFrames“.

Kaip įdiegti „Seaborn“?

Norėdami įdiegti „Python Seaborn“ biblioteką, galite naudoti šias komandas pagal naudojamą platformą:

pip įdiegti jūros gimusį

arba

conda įdiegti jūros gimusį

Kai tai bus įdiegta, tiesiog įsitikinkite, kad įdėjote paketus ir bibliotekas, nuo kurių priklauso jūriniai gyvūnai.

„Python Seaborn Dependencies“ diegimas:

Privalomos jūrų giminaičių priklausomybės yra:

Taip pat yra viena rekomenduojama priklausomybė:

  • valstybiniai modeliai

Norėdami įdiegti šias bibliotekas, galite naudoti tas pačias komandas, kaip parodyta anksčiau „Seaborn“ su jų atitinkamais pavadinimais. Įdiegę juos galima lengvai importuoti. „Seaborn“ leidžia jums įkelti bet kokį duomenų rinkinį iš naudojant load_dataset () funkcija. Taip pat galite peržiūrėti visus galimus duomenų rinkinius naudodami funkciją get_dataset_names () taip:

PAVYZDYS:

importuoti gimusį kaip sns sns.get_dataset_names ()

Bus pateiktas visų galimų duomenų rinkinių sąrašas.
Dabar, kai sukūrėte savo aplinką darbui su jūros giminaičiais, eikime toliau, norėdami sužinoti, kaip naudotis jo braižymo funkcijomis .

Jūros gimimo braižymo funkcijos

Statistinių santykių vizualizavimas:

Santykių tarp duomenų rinkinio kintamųjų supratimo procesas ir tai, kaip šie ryšiai savo ruožtu priklauso nuo kitų kintamųjų, yra žinomas kaip statistinė analizė. Dabar pažvelkime į tam reikalingas funkcijas:

relplot ():

Tai figūros lygio funkcija, kuri vizualizuojant statistinius ryšius naudoja dvi kitas ašių funkcijas:

  • sklaidos planas ()
  • linija ()

Šias funkcijas galima nurodyti naudojant „relplot“ () parametrą „natūra“. Jei nurodomas šis parametras, reikia numatytojo parametro, kuris yra „scatterplot“ (). Prieš pradėdami rašyti kodą, būtinai importuokite reikiamas bibliotekas taip:

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

Atkreipkite dėmesį, kad stiliaus atributas taip pat yra pritaikomas ir gali turėti bet kokią vertę, pvz., „Darkgrid“, „erkes“ ir kt., Kurias aptarsiu vėliau siužeto estetikos skyriuje. Pažvelkime į nedidelį pavyzdį:

PAVYZDYS:

f = sns.load_dataset ('skrydžiai') sns.relplot (x = 'keleiviai', y = 'mėnuo', duomenys = f)

IŠĖJIMAS:

Skrydžiai1-Python Seaborn pamoka-Edureka

Kaip matote, taškai braižomi dviem matmenimis. Tačiau naudodami „atspalvio“ semantiką galite pridėti dar vieną aspektą. Pažvelkime į to paties pavyzdį:

PAVYZDYS:

f = sns.load_dataset ('skrydžiai') sns.relplot (x = 'keleiviai', y = 'mėnuo', atspalvis = 'metai', duomenys = f)

Pamatysite tokį išėjimą:

IŠĖJIMAS:

Tačiau yra daug daugiau tinkinimų, kuriuos galite išbandyti, pvz., Spalvas, stilius, dydį ir kt. Leiskite man tiesiog parodyti, kaip galite pakeisti spalvą šiame pavyzdyje:

PAVYZDYS:

sns.set (style = 'darkgrid') f = sns.load_dataset ('skrydžiai') sns.relplot (x = 'keleiviai', y = 'mėnuo', atspalvis = 'metai', paletė = 'ch: r = - .5, l = .75 ', duomenys = f)

IŠĖJIMAS:

lineplot ():

Ši funkcija leis jums nubrėžti ištisinę duomenų liniją. Šią funkciją galite naudoti pakeisdami parametrą „natūra“ taip:

PAVYZDYS:

a = pd.DataFrame ({„Diena“: [1,2,3,4,5,6,7], „Bakalėja“: [30,80,45,23,51,46,76], „Drabužiai“ : [13,40,34,23,54,67,98], „Indai“: [12,32,27,56,87,54,34]}, indeksas = [1,2,3,4,5 , 6,7]) g = sns.relplot (x = 'diena', y = 'drabužiai', natūra = 'eilutė', duomenys = a) g.fig.autofmt_xdate ()

IŠĖJIMAS:

Numatytasis lineplot yra y kaip x funkcija. Tačiau, jei norite tai padaryti, jį galima pakeisti. Yra dar daugybė galimybių, kurias galite išbandyti toliau.

Dabar pažvelkime, kaip braižyti kategoriškus duomenis.

Braižymas naudojant kategorinius duomenis:

Šis požiūris susidaro tada, kai mūsų pagrindinis kintamasis yra toliau suskirstytas į atskiras grupes (kategoriškas). Tai galima pasiekti naudojant catplot () funkciją.

catplot ():

Tai yra figūros lygio funkcija, pvz., „Relplot“ (). Tai galima apibūdinti trimis ašių lygio funkcijų šeimomis, būtent:

  1. Scatterplots - tai apima stripplot (), swarmplot ()

  2. Paskirstymo siužetai - „boxplot“ (), „violinplot“ (), „boxenplot“ ()

  3. Numatyti planai - būtent taškų planas (), barų planas (), grafikas ()

Paimkime keletą pavyzdžių, kaip tai parodyti:

PAVYZDYS:

importuoti gimusį kaip sns importuoti matplotlib.pyplot kaip plt sns.set (style = 'ticks', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day', y = 'total_bill', duomenys = a)

IŠĖJIMAS:

kaip mesti programą Java

Kaip matote, aukščiau pateiktame pavyzdyje nenustatiau parametro „natūra“. Todėl jis grąžino grafiką kaip numatytąjį sklaidos planą. Galite nurodyti bet kurią iš ašių lygio funkcijų, jei norite pakeisti grafiką. Paimkime ir to pavyzdį:

PAVYZDYS:

importuoti gimusį kaip sns importuoti matplotlib.pyplot kaip plt sns.set (style = 'ticks', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day', y = 'total_bill', natūra = 'smuikas', duomenys = a)

IŠĖJIMAS:

Aukščiau pateiktame išvestyje rodomas patarimų duomenų rinkinio smuiko planas. Dabar pabandykime sužinoti, kaip vizualizuoti duomenų rinkinio pasiskirstymą.

Duomenų rinkinio paskirstymo vizualizavimas:

Tai iš esmės susijęs su duomenų rinkinių supratimu, atsižvelgiant į tai, ar jie yra vienmačiai ar dvimačiai. Prieš pradėdami nuo to, tiesiog importuokite:

importuoti numpy kaip np importuoti pandas kaip pd importuoti gimusius kaip sns importuoti matplotlib.pyplot kaip plt iš „scipy“ importo statistikos sns.set (color_codes = True)

Kai tai bus padaryta, galėsite tęsti vienmačių ir dvimačių skirstinių braižymą.

Vienkartinių skirstinių braižymas:

Norėdami juos braižyti, galite naudoti distplot () funkciją taip:

PAVYZDYS:

a = np.atsitiktinis.normalus (loc = 5, dydis = 100, mastelis = 2) sns.distplot (a)

IŠĖJIMAS:

Kaip matote aukščiau pateiktame pavyzdyje, mes nubraižėme kintamojo a grafiką, kurio reikšmes generuoja normali () funkcija naudojant distplotą.

Dviejų kintamųjų pasiskirstymų braižymas:

Tai atsiranda tada, kai turite du atsitiktinius nepriklausomus kintamuosius, dėl kurių atsiranda tikėtinas įvykis. Geriausia tokio tipo grafikų braižymo funkcija yra „jointplot“ (). Dabar suskaičiuokime dvipusį grafiką naudodami „jointplot“ ().

PAVYZDYS:

x = pd.DataFrame ({„Diena“: [1,2,3,4,5,6,7], „Bakalėja“: [30,80,45,23,51,46,76], „Drabužiai“ : [13,40,34,23,54,67,98], „Indai“: [12,32,27,56,87,54,34]}, indeksas = [1,2,3,4,5 , 6,7]) y = pd.DataFrame ({„Diena“: [8,9,10,11,12,13,14], „Bakalėja“: [30,80,45,23,51,46, 76], „Drabužiai“: [13,40,34,23,54,67,98], „Indai“: [12,32,27,56,87,54,34]}, indeksas = [8,9 , 10,11,12,13,14]) vidurkis, cov = [0, 1], [(1, .5), (.5, 1)] duomenys = np.random.multivariate_normal (mean, cov, 200 ) su sns.axes_style ('balta'): sns.jointplot (x = x, y = y, kind = 'kde', color = 'b')

IŠĖJIMAS:

Dabar, kai supratote įvairias „Python Seaborn“ funkcijas, pereikime prie struktūrizuotų kelių sklypų tinklelių kūrimo.

Kelių sklypų tinkleliai:

„Python Seaborn“ leidžia kartu braižyti kelis tinklelius. Iš esmės tai diagramos ar grafikai, kurie nubraižyti naudojant tą pačią skalę ir ašis, kad būtų lengviau juos palyginti. Tai savo ruožtu padeda programuotojui greitai atskirti siužetus ir gauti didelius informacijos kiekius.

Apsvarstykite šį funkcijos facetgrid () pavyzdį, kad pavaizduotumėte šiuos grafikus.

PAVYZDYS:

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

IŠĖJIMAS:

Pirmiau pateiktoje išvestyje aiškiai parodomi patarimai, kurie pateikiami per pietus ir vakarienę. Taip pat galite piešti naudodami „PairGrid“ funkciją, kai turite porą kintamųjų, kuriuos norite palyginti. Apsvarstykite šį pavyzdį.

PAVYZDYS:

sns.set (style = 'erkės') a = sns.load_dataset ('skrydžiai') b = sns.PairGrid (a) b.map (plt.scatter)

IŠĖJIMAS:

Kaip matote, aukščiau pateiktas rezultatas skirtingais būdais aiškiai palygina metus ir keleivių skaičių.

Seaborn taip pat leidžia pritaikyti estetiką, kuri aptariama toliau.

Siužeto estetika:

Šis „Python Seaborn“ mokymo programos segmentas skirtas padaryti mūsų siužetus patrauklesnius ir malonesnius.

Python Seaborn paveikslų estetika:

Pirmoji funkcija, kurią aptarsiu, yra nustatyta (). Anksčiau naudojau šios funkcijos parametrą „stilius“. Šis parametras iš esmės susijęs su jūrinėmis temomis. Šiuo metu yra penki jų variantai, būtent darkgrid, erkės, whitegrid, white and dark.

Apsvarstykite šį pavyzdį, parodantį baltą temą.

PAVYZDYS:

importuoti gimusį kaip sns importuoti matplotlib.pyplot kaip plt sns.set (style = 'white', color_codes = True) a = sns.load_dataset ('tips') sns.boxplot (x = 'day', y = 'total_bill', duomenys = a)

IŠĖJIMAS:

Pirmiau pateiktame išvestyje galite pastebėti, kad tema pakeista į baltą. Galite juos toliau tyrinėti naudodami kitas temas. Jei pastebėjote ankstesniame išvestyje, aplink diagramą yra ašių. Tačiau tai taip pat galima pritaikyti naudojant funkciją despine (). Pažvelkite į žemiau pateiktą pavyzdį.

PAVYZDYS:

importuoti gimusį kaip sns importuoti matplotlib.pyplot kaip plt sns.set (style = 'white', color_codes = True) a = sns.load_dataset ('tips') sns.boxplot (x = 'day', y = 'total_bill', duomenys = a) sns.despine (poslinkis = 10, apdaila = tiesa)

IŠĖJIMAS:



Atkreipkite dėmesį į skirtumą tarp dviejų ankstesnių išėjimų. Tačiau yra daug daugiau galimybių, kurias galite patys ištirti.

Python Seaborn spalvų paletės:

Spalva iš esmės yra ta savybė, kuri prie žmogaus akių priartėja per bet kurią kitą savybę. „Seaborn“ leidžia jums žaisti su spalvomis naudojant įvairias funkcijas, tokias kaip „color_palette“ (), „hls_palette“ (), „husl_palette“ () ir kt.. Pažvelkite į spalvas, kurios šiuo metu yra jūrinės spalvos.

PAVYZDYS:

importuoti numerį kaip np importuoti gimusį kaip sns importuoti matplotlib.pyplot kaip plt sns.set () presentcolors = sns.color_palette () sns.palplot (presentcolors)

IŠĖJIMAS:

Aukščiau pateiktame paveikslėlyje rodomos spalvos, kurios yra jūros gimusiųjų. Aš tai padariau naudodamas palplot () funkciją. Jei norite gilesnių variantų, galite naudoti hls_palette (), husl_palette () ir kt.

Tai padės mums baigti „Python Seaborn Tutorial“. Tikiuosi, jūs viską aiškiai supratote. Įsitikinkite, kad praktikuojate kuo daugiau .

Turite mums klausimą? Prašau tai paminėti šio „Python Seaborn Tutorial“ tinklaraščio komentarų skyriuje, ir mes kuo greičiau susisieksime su jumis.

Norėdami gauti išsamių žinių apie „Python“ kartu su įvairiomis jo programomis, galite užsiregistruoti tiesiogiai su parą visą parą ir visą gyvenimą.