Python Seaborn Tutorial: Vad är Seaborn och hur man använder det?



Python Seaborn-handledning längs skillnaden mellan seaborn och matplotlib. Lär dig också om de olika funktionerna och anpassningarna som finns tillgängliga hos havsfödda.

Python är ett förrådshus med många oerhört kraftfulla bibliotek och ramar. Bland dem är Seaborn, vilket är en dominerande datavisualisering bibliotek, vilket ger ännu en anledning för programmerare att slutföra . I den här Python Seaborn-självstudien kommer du att luta alla grepparna med datavisualisering med Seaborn.

Innan vi går vidare, låt oss bläddra igenom alla diskussionsämnen i den här artikeln:





Så låt oss börja med att resonera om vikten av Python Seaborn.

Varför använda Python Seaborn?

Som nämnts tidigare används Python Seaborn-biblioteket för att underlätta den utmanande uppgiften med datavisualisering och den är baserad på . Seaborn tillåter skapande av statistisk grafik genom följande funktioner:



  • Ett API som är baserat på datamängder som möjliggör jämförelse mellan flera variabler

  • Stöder nätverk med flera tomter som i sin tur underlättar att bygga komplexa visualiseringar

  • Univariata och bivariata visualiseringar tillgängliga för att jämföra mellan delmängder av data



  • Tillgängligheten av olika färgpaletter för att avslöja olika typer av mönster

  • Uppskattningar och tomter automatiskt

Så om du undrade varför använda Seaborn när du redan har Matplotlib, här är svaret på det.

Python Seaborn vs Matplotlib:

'Om Matplotlib' försöker göra enkla saker enkla och hårda saker möjliga ', försöker seaborn också göra en väldefinierad uppsättning hårda saker lätt' - Michael Waskom (skapare av Seaborn).
Faktiskt är Matplotlib bra men Seaborn är bättre. Det finns i princip två brister i Matplotlib som Seaborn fixar:

  1. Matplotlib kan anpassas men det är svårt att ta reda på vilka inställningar som krävs för att göra tomter mer attraktiva. Å andra sidan kommer Seaborn med många anpassade teman och gränssnitt på hög nivå för att lösa problemet.

  2. När du arbetar med Pandor Matplotlib fungerar inte bra när det gäller att hantera DataFrames, medan Seaborn-funktioner faktiskt fungerar på DataFrames.

Hur installerar jag Seaborn?

För att installera Python Seaborn-biblioteket kan du använda följande kommandon baserat på plattformen du använder:

pip installera seaborn

eller

conda installera seaborn

När detta är installerat, se bara till att installera de paket och bibliotek som seaborn är beroende av.

Installera Python Seaborn-beroende:

Obligatoriska beroenden för havsfödda är:

Det finns också ett rekommenderat beroende som är:

  • statliga modeller

För att installera dessa bibliotek kan du använda samma kommandon som tidigare visats för Seaborn med deras respektive namn. När de har installerats kan de enkelt importeras. Seaborn låter dig ladda alla datauppgifter från använda load_dataset () fungera. Du kan också se alla tillgängliga datamängder med funktionen get_dataset_names () enligt följande:

EXEMPEL:

importera seaborn som sns sns.get_dataset_names ()

Detta returnerar en lista över alla tillgängliga datamängder.
Nu när du har ställt in din miljö för att arbeta med havsfödda, låt oss gå vidare för att se hur du använder plottningsfunktionerna i .

Seaborn-plottningsfunktioner

Visualisering av statistiska förhållanden:

Processen att förstå relationer mellan variabler i en dataset och hur dessa förhållanden i sin tur beror på andra variabler kallas statistisk analys. Låt oss nu ta en djupare titt på de funktioner som behövs för detta:

relplot ():

Detta är en figurnivåfunktion som använder två andra axelfunktioner för visualisering av statistiska förhållanden som är:

  • scatterplot ()
  • linplot ()

Dessa funktioner kan specificeras med hjälp av ”kind” -parametern för relplot (). Om den här parametern ges, tar den standard som är scatterplot (). Innan du börjar skriva din kod, se till att importera nödvändiga bibliotek enligt följande:

importera numpy som np importera pandor som pd importera matplotlib.pyplot som plt importera seaborn som sns sns.set (style = 'darkgrid')

Observera att stilattributet också är anpassningsbart och kan ta vilket värde som helst, som mörkt rutnät, fästingar, etc. som jag kommer att diskutera senare i avsnittet om plot-estetik. Låt oss nu titta på ett litet exempel:

EXEMPEL:

f = sns.load_dataset ('flyg') sns.relplot (x = 'passagerare', y = 'månad', data = f)

PRODUKTION:

Flights1-Python Seaborn Tutorial-Edureka

Som du ser är punkterna ritade i två dimensioner. Du kan dock lägga till en annan dimension med hjälp av semantiken 'hue'. Låt oss titta på ett exempel på detsamma:

EXEMPEL:

f = sns.load_dataset ('flyg') sns.relplot (x = 'passagerare', y = 'månad', nyans = 'år', data = f)

Du ser följande utdata:

PRODUKTION:

Det finns dock många fler anpassningar som du kan prova, till exempel färger, stilar, storlek etc. Låt mig bara visa hur du kan ändra färgen i följande exempel:

EXEMPEL:

java hitta största numret i matrisen
sns.set (style = 'darkgrid') f = sns.load_dataset ('flight') sns.relplot (x = 'passagerare', y = 'månad', nyans = 'år', palett = 'ch: r = - .5, l = .75 ', data = f)

PRODUKTION:

linplot ():

Med den här funktionen kan du rita en kontinuerlig linje för dina data. Du kan använda den här funktionen genom att ändra ”kind” -parametern enligt följande:

EXEMPEL:

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

PRODUKTION:

Standard för linjeplott är y som en funktion av x. Det kan dock ändras om du vill göra det. Det finns många fler alternativ som du kan prova vidare.

Låt oss nu titta på hur man plottar kategoriska data.

Plottning med kategoriska data:

Detta tillvägagångssätt kommer in i bilden när vår huvudvariabel är ytterligare indelad i diskreta grupper (kategoriska). Detta kan uppnås med funktionen catplot ().

catplot ():

Detta är en figurnivå-funktion som relplot (). Det kan karakteriseras av tre familjefunktioner på axelnivå, nämligen:

  1. Scatterplots - Dessa inkluderar stripplot (), swarmplot ()

  2. Distributionsdiagram - vilka är boxplot (), violinplot (), boxenplot ()

  3. Uppskattningsplaner - nämligen pointplot (), barplot (), countplot ()

Låt oss nu ta några exempel för att demonstrera detta:

EXEMPEL:

importera seaborn som sns importera matplotlib.pyplot som plt sns.set (style = 'fästingar', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'dag', y = 'total_bill', data = a)

PRODUKTION:

Som du kan se har jag i exemplet ovan inte ställt in parametern ”kind”. Därför har den returnerat diagrammet som standardspridningsdiagram. Du kan ange vilken som helst av axelnivåfunktionerna för att ändra grafen efter behov. Låt oss också ta ett exempel på detta:

EXEMPEL:

importera seaborn som sns importera matplotlib.pyplot som plt sns.set (style = 'fästingar', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'dag', y = 'total_bill', kind = 'violin', data = a)

PRODUKTION:

Ovanstående utdata visar fiolplott för tipset. Låt oss nu försöka hitta hur man visualiserar distributionen av en dataset.

Visualisera distributionen av en dataset:

Detta handlar i grunden om att förstå datamängder med sammanhang till att vara univariata eller bivariata. Innan du börjar med detta, importera bara följande:

importera numpy som np importera pandor som pd importera seaborn som sns importera matplotlib.pyplot som plt från scipy importstatistik sns.set (color_codes = True)

När detta är gjort kan du fortsätta plotta univariata och bivariata distributioner.

Plottning av univariata distributioner:

För att plotta dem kan du använda distplot () -funktionen enligt följande:

EXEMPEL:

a = np.random.normal (loc = 5, storlek = 100, skala = 2) sns.distplot (a)

PRODUKTION:

Som du kan se i exemplet ovan har vi ritat ett diagram för variabeln a vars värden genereras av normal () -funktionen med hjälp av distplot.

Plottning av bivariata distributioner:

Detta kommer till bild när du har två slumpmässiga oberoende variabler som resulterar i någon trolig händelse. Den bästa funktionen att plotta denna typ av grafer är jointplot (). Låt oss nu plotta ett bivariat diagram med hjälp av jointplot ().

EXEMPEL:

x = pd.DataFrame ({'Day': [1,2,3,4,5,6,7], 'Grocery': [30,80,45,23,51,46,76], 'Clothes' : [13,40,34,23,54,67,98], 'redskap': [12,32,27,56,87,54,34]}, index = [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], 'Kläder': [13,40,34,23,54,67,98], 'Redskap': [12,32,27,56,87,54,34]}, index = [8,9 , 10,11,12,13,14]) medelvärde, cov = [0, 1], [(1, .5), (.5, 1)] data = np.tillfällig.multivariat_normal (medelvärde, cov, 200 ) med sns.axes_style ('white'): sns.jointplot (x = x, y = y, kind = 'kde', color = 'b')

PRODUKTION:

Nu när du har förstått de olika funktionerna i Python Seaborn, låt oss gå vidare med att bygga strukturerade flerplottnät.

Flera tomt:

Med Python Seaborn kan du plotta flera rutnät sida vid sida. Dessa är i grunden diagram eller diagram som ritas med samma skala och axlar för att underlätta jämförelsen mellan dem. Detta i sin tur hjälper programmeraren att skilja snabbt mellan tomterna och få stora mängder information.

Tänk på följande exempel på funktionen facetgrid () för att plotta dessa diagram.

EXEMPEL:

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

PRODUKTION:

Ovanstående utdata visar tydligt jämförelsen mellan tipsen som ges under lunch och middag. Du kan också plotta med hjälp av PairGrid-funktionen när du har ett par variabler att jämföra. Tänk på följande exempel.

EXEMPEL:

sns.set (style = 'fästingar') a = sns.load_dataset ('flyg') b = sns.PairGrid (a) b.map (plt.spridning)

PRODUKTION:

Som du kan se jämförs ovanstående produktion tydligt mellan året och antalet passagerare på olika sätt.

Seaborn tillåter också anpassningar av estetik som diskuteras vidare.

Plot-estetik:

Detta segment av Python Seaborn-handledning handlar om att göra våra tomter mer attraktiva och förtjusande.

Python Seaborn Figur-estetik:

Den första funktionen som jag ska diskutera är inställd (). Jag har använt 'stil' -parametern för den här funktionen tidigare. Denna parameter handlar i grunden om havsfödda teman. För närvarande finns det fem av dem tillgängliga, nämligen darkgrid, fästingar, whitegrid, white och dark.

Tänk på följande exempel som visar det vita temat.

EXEMPEL:

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

PRODUKTION:

I ovanstående utdata kan du märka att temat har ändrats till vitt. Du kan utforska dem vidare med hjälp av de andra teman också. Om du märker i föregående utgång finns det axlar runt grafen. Detta kan dock också anpassas med despine () -funktionen. Titta på exemplet nedan.

EXEMPEL:

importera seaborn som sns importera matplotlib.pyplot som 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)

PRODUKTION:



Notera skillnaden mellan de två föregående utgångarna. Det finns dock många fler alternativ som du kan utforska själv.

Python Seaborn färgpalett:

Färg är i grunden den funktion som närmar sig de mänskliga ögonen bortom alla andra funktioner. Seaborn låter dig spela med färger med hjälp av olika funktioner som color_palette (), hls_palette (), husl_palette (), etc. Ta en titt på färgerna som för närvarande finns i seaborn.

EXEMPEL:

importera numpy som np importera seaborn som sns importera matplotlib.pyplot som plt sns.set () presentcolors = sns.color_palette () sns.palplot (presentcolors)

PRODUKTION:

java konvertera dubbel till int

Ovanstående bild visar de färger som finns inom havsfödda. Jag har gjort det med palplot () -funktionen. För djupare variationer kan du använda hls_palette (), husl_palette (), etc.

Detta tar oss till slutet av Python Seaborn Tutorial. Jag hoppas att du har förstått allt klart. Se till att du tränar så mycket som möjligt .

Har du en fråga till oss? Vänligen nämna det i kommentarsektionen i denna “Python Seaborn Tutorial” -blogg så kommer vi tillbaka till dig så snart som möjligt.

För att få fördjupad kunskap om Python tillsammans med dess olika applikationer kan du registrera dig för live med 24/7 support och livstidsåtkomst.