Python Seaborn Tutorial: Was ist Seaborn und wie wird es verwendet?



Python Seaborn Tutorial über den Unterschied zwischen Seaborn und Matplotlib. Informieren Sie sich auch über die verschiedenen Funktionen und Anpassungen, die in seaborn verfügbar sind.

Python ist ein Lagerhaus mit zahlreichen immens leistungsfähigen Bibliotheken und Frameworks. Unter ihnen ist Seaborn, Das ist eine Dominante Datenvisualisierung Bibliothek, was einen weiteren Grund für Programmierer darstellt, diese zu vervollständigen . In diesem Python Seaborn-Tutorial lernen Sie die Datenvisualisierung mit Seaborn kennen.

Bevor wir fortfahren, werfen wir einen Blick auf alle Diskussionsthemen in diesem Artikel:





Beginnen wir also damit, zunächst die Bedeutung von Python Seaborn zu erläutern.

Warum Python Seaborn verwenden?

Wie bereits erwähnt, wird die Python Seaborn-Bibliothek verwendet, um die herausfordernde Aufgabe der Datenvisualisierung zu vereinfachen. Sie basiert auf . Seaborn ermöglicht die Erstellung statistischer Grafiken über die folgenden Funktionen:



  • Eine API, die auf Datasets basiert und den Vergleich zwischen mehreren ermöglicht Variablen

  • Unterstützt Raster mit mehreren Plots, die wiederum das Erstellen komplexer Visualisierungen erleichtern

  • Univariate und bivariate Visualisierungen zum Vergleichen zwischen Teilmengen von Daten verfügbar



  • Verfügbarkeit verschiedener Farbpaletten, um verschiedene Arten von Mustern aufzudecken

  • Schätzungen und Grundstücke automatisch

Wenn Sie sich also gefragt haben, warum Sie Seaborn verwenden sollten, wenn Sie bereits Matplotlib haben, finden Sie hier die Antwort darauf.

Python Seaborn gegen Matplotlib:

„Wenn Matplotlib„ versucht, einfache und schwierige Dinge einfach zu machen “, versucht Seaborn, auch eine genau definierte Reihe schwieriger Dinge zu vereinfachen“ - Michael Waskom (Schöpfer von Seaborn).
Tatsächlich ist Matplotlib gut, aber Seaborn ist besser. Grundsätzlich gibt es zwei Mängel von Matplotlib, die Seaborn behebt:

  1. Matplotlib kann personalisiert werden, es ist jedoch schwierig herauszufinden, welche Einstellungen erforderlich sind, um die Attraktivität von Plots zu erhöhen. Auf der anderen Seite bietet Seaborn zahlreiche angepasste Themen und übergeordnete Schnittstellen, um dieses Problem zu lösen.

  2. Bei der Arbeit mit Pandas Matplotlib ist im Umgang mit DataFrames nicht gut geeignet, während Seaborn-Funktionen tatsächlich mit DataFrames funktionieren.

Wie installiere ich Seaborn?

Um die Python Seaborn-Bibliothek zu installieren, können Sie die folgenden Befehle verwenden, die auf der von Ihnen verwendeten Plattform basieren:

Pip installieren Seaborn

oder

conda install seaborn

Stellen Sie nach der Installation sicher, dass Sie die Pakete und Bibliotheken installieren, von denen seaborn abhängig ist.

Installieren von Python Seaborn-Abhängigkeiten:

Obligatorische Abhängigkeiten für Seegeborene sind:

Es gibt auch eine empfohlene Abhängigkeit:

  • Zustandsmodelle

Um diese Bibliotheken zu installieren, können Sie dieselben Befehle wie zuvor für Seaborn mit ihren jeweiligen Namen verwenden. Einmal installiert, können sie einfach importiert werden. Mit Seaborn können Sie jeden Datensatz aus laden Verwendung der load_dataset () Funktion. Sie können auch alle verfügbaren Datensätze mit der Funktion get_dataset_names () wie folgt anzeigen:

BEISPIEL:

importiere seaborn als sns sns.get_dataset_names ()

Dies gibt eine Liste aller verfügbaren Datensätze zurück.
Nachdem Sie Ihre Umgebung für die Arbeit mit Seaborn eingerichtet haben, gehen wir weiter, um zu sehen, wie die Plotfunktionen verwendet werden .

Seaborn Plotting-Funktionen

Visualisierung statistischer Beziehungen:

Der Prozess des Verstehens von Beziehungen zwischen Variablen eines Datensatzes und wie diese Beziehungen wiederum von anderen Variablen abhängen, wird als statistische Analyse bezeichnet. Schauen wir uns nun die dafür erforderlichen Funktionen genauer an:

relplot ():

Dies ist eine Funktion auf Figurenebene, die zwei weitere Achsenfunktionen zur Visualisierung statistischer Beziehungen verwendet:

  • Streudiagramm()
  • Lineplot ()

Diese Funktionen können mit dem Parameter 'kind' von relplot () angegeben werden. Wenn dieser Parameter angegeben wird, wird der Standardparameter Scatterplot () verwendet. Stellen Sie vor dem Schreiben Ihres Codes sicher, dass Sie die erforderlichen Bibliotheken wie folgt importieren:

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

Bitte beachten Sie, dass das Stilattribut auch anpassbar ist und jeden Wert wie Darkgrid, Ticks usw. annehmen kann, den ich später im Abschnitt über Plot-Ästhetik erläutern werde. Schauen wir uns nun ein kleines Beispiel an:

BEISPIEL:

f = sns.load_dataset ('Flüge') sns.relplot (x = 'Passagiere', y = 'Monat', Daten = f)

AUSGABE:

Flights1-Python Seaborn Tutorial-Edureka

Wie Sie sehen können, sind die Punkte zweidimensional dargestellt. Sie können jedoch mithilfe der Semantik 'Farbton' eine weitere Dimension hinzufügen. Schauen wir uns ein Beispiel dafür an:

BEISPIEL:

f = sns.load_dataset ('Flüge') sns.relplot (x = 'Passagiere', y = 'Monat', Farbton = 'Jahr', Daten = f)

Sie sehen die folgende Ausgabe:

AUSGABE:

Es gibt jedoch noch viele weitere Anpassungen, die Sie ausprobieren können, z. B. Farben, Stile, Größe usw. Lassen Sie mich im folgenden Beispiel zeigen, wie Sie die Farbe ändern können:

BEISPIEL:

sns.set (style = 'darkgrid') f = sns.load_dataset ('Flüge') sns.relplot (x = 'Passagiere', y = 'Monat', Farbton = 'Jahr', Palette = 'ch: r = - .5, l = .75 ', Daten = f)

AUSGABE:

Lineplot ():

Mit dieser Funktion können Sie eine durchgehende Linie für Ihre Daten zeichnen. Sie können diese Funktion verwenden, indem Sie den Parameter 'kind' wie folgt ändern:

BEISPIEL:

a = pd.DataFrame ({'Tag': [1,2,3,4,5,6,7], 'Lebensmittelgeschäft': [30,80,45,23,51,46,76], 'Kleidung' : [13,40,34,23,54,67,98], 'Utensilien': [12,32,27,56,87,54,34]}, Index = [1,2,3,4,5 , 6,7]) g = sns.relplot (x = 'Tag', y = 'Kleidung', Art = 'Linie', Daten = a) g.fig.autofmt_xdate ()

AUSGABE:

Der Standardwert für das Liniendiagramm ist y als Funktion von x. Sie kann jedoch geändert werden, wenn Sie dies wünschen. Es gibt viele weitere Optionen, die Sie weiter ausprobieren können.

Schauen wir uns nun an, wie kategoriale Daten gezeichnet werden.

Zeichnen mit kategorialen Daten:

Dieser Ansatz kommt ins Spiel, wenn unsere Hauptvariable weiter in diskrete Gruppen (kategorial) unterteilt wird. Dies kann mit der Funktion catplot () erreicht werden.

catplot ():

Dies ist eine Funktion auf Figurenebene wie relplot (). Es kann durch drei Familien von Achsenebenenfunktionen charakterisiert werden, nämlich:

  1. Streudiagramme - Dazu gehören stripplot (), swarmplot ()

  2. Verteilungsdiagramme - Boxplot (), Violinplot (), Boxenplot ()

  3. Schätzplots - nämlich Pointplot (), Barplot (), Countplot ()

Nehmen wir nun einige Beispiele, um dies zu demonstrieren:

BEISPIEL:

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

AUSGABE:

Wie Sie sehen können, habe ich im obigen Beispiel den Parameter 'kind' nicht festgelegt. Daher wurde das Diagramm als Standardstreudiagramm zurückgegeben. Sie können eine beliebige Achsenebenenfunktion angeben, um das Diagramm nach Bedarf zu ändern. Nehmen wir auch ein Beispiel dafür:

BEISPIEL:

importiere seaborn als sns importiere matplotlib.pyplot als plt sns.set (style = 'ticks', color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day', y = 'total_bill', Art = 'Geige', Daten = a)

AUSGABE:

Die obige Ausgabe zeigt den Geigenplot für den Spitzendatensatz. Versuchen wir nun herauszufinden, wie die Verteilung eines Datensatzes visualisiert werden kann.

Visualisierung der Verteilung eines Datensatzes:

Hier geht es im Wesentlichen darum, Datensätze mit Kontext so zu verstehen, dass sie univariat oder bivariat sind. Bevor Sie damit beginnen, importieren Sie einfach Folgendes:

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)

Sobald dies erledigt ist, können Sie mit dem Plotten von univariaten und bivariaten Verteilungen fortfahren.

Zeichnen univariater Verteilungen:

Um sie zu zeichnen, können Sie die Funktion distplot () wie folgt verwenden:

BEISPIEL:

a = np.random.normal (loc = 5, size = 100, scale = 2) sns.distplot (a)

AUSGABE:

Wie Sie im obigen Beispiel sehen können, haben wir ein Diagramm für die Variable a gezeichnet, deren Werte von der Funktion normal () mithilfe von distplot generiert werden.

Zeichnen von bivariaten Verteilungen:

Dies wird sichtbar, wenn Sie zwei zufällige unabhängige Variablen haben, die zu einem wahrscheinlichen Ereignis führen. Die beste Funktion zum Zeichnen dieser Art von Diagrammen ist Jointplot (). Lassen Sie uns nun einen bivariaten Graphen mit Jointplot () zeichnen.

BEISPIEL:

x = pd.DataFrame ({'Tag': [1,2,3,4,5,6,7], 'Lebensmittelgeschäft': [30,80,45,23,51,46,76], 'Kleidung' : [13,40,34,23,54,67,98], 'Utensilien': [12,32,27,56,87,54,34]}, Index = [1,2,3,4,5 , 6,7]) y = pd.DataFrame ({'Tag': [8,9,10,11,12,13,14], 'Lebensmittelgeschäft': [30,80,45,23,51,46, 76], 'Kleidung': [13,40,34,23,54,67,98], 'Utensilien': [12,32,27,56,87,54,34]}, Index = [8,9 , 10,11,12,13,14]) Mittelwert, cov = [0, 1], [(1, .5), (.5, 1)] Daten = np.random.multivariate_normal (Mittelwert, cov, 200 ) mit sns.axes_style ('white'): sns.jointplot (x = x, y = y, kind = 'kde', color = 'b')

AUSGABE:

Nachdem Sie die verschiedenen Funktionen in Python Seaborn verstanden haben, können Sie strukturierte Multi-Plot-Raster erstellen.

Multi-Plot-Gitter:

Mit Python Seaborn können Sie mehrere Raster nebeneinander zeichnen. Hierbei handelt es sich im Wesentlichen um Diagramme oder Grafiken, die mit demselben Maßstab und denselben Achsen erstellt werden, um den Vergleich zwischen ihnen zu erleichtern. Dies wiederum hilft dem Programmierer, schnell zwischen den Plots zu unterscheiden und große Mengen an Informationen zu erhalten.

Betrachten Sie das folgende Beispiel der Funktion facetgrid (), um diese Diagramme zu zeichnen.

BEISPIEL:

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

AUSGABE:

Die obige Ausgabe zeigt deutlich den Vergleich zwischen den Tipps, die während des Mittag- und Abendessens gegeben werden. Sie können auch mit der PairGrid-Funktion zeichnen, wenn Sie zwei zu vergleichende Variablen haben. Betrachten Sie das folgende Beispiel.

BEISPIEL:

sns.set (style = 'ticks') a = sns.load_dataset ('flüge') b = sns.PairGrid (a) b.map (plt.scatter)

AUSGABE:

Wie Sie sehen können, vergleicht die obige Ausgabe das Jahr und die Anzahl der Passagiere auf unterschiedliche Weise.

Seaborn erlaubt auch Anpassungen in Bezug auf die Ästhetik, die weiter diskutiert werden.

Handlungsästhetik:

In diesem Abschnitt des Python Seaborn-Tutorials geht es darum, unsere Handlungen attraktiver und attraktiver zu gestalten.

Python Seaborn Figurenästhetik:

Die erste Funktion, die ich diskutieren werde, ist set (). Ich habe zuvor den Parameter 'style' dieser Funktion verwendet. Dieser Parameter befasst sich im Wesentlichen mit seelgeborenen Themen. Derzeit sind fünf davon verfügbar, nämlich Darkgrid, Ticks, Whitegrid, White und Dark.

Betrachten Sie das folgende Beispiel, das das weiße Thema demonstriert.

BEISPIEL:

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

AUSGABE:

Umkehren einer Zahl in Java

In der obigen Ausgabe können Sie feststellen, dass das Thema in Weiß geändert wurde. Sie können sie auch anhand der anderen Themen weiter untersuchen. Wenn Sie in der vorherigen Ausgabe feststellen, dass rund um das Diagramm Achsen vorhanden sind. Dies kann jedoch auch mit der Funktion dispine () angepasst werden. Schauen Sie sich das folgende Beispiel an.

BEISPIEL:

importiere seaborn als sns importiere matplotlib.pyplot als 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)

AUSGABE:



Beachten Sie den Unterschied zwischen den beiden vorherigen Ausgängen. Es gibt jedoch noch viele weitere Optionen, die Sie selbst erkunden können.

Python Seaborn Farbpaletten:

Farbe ist im Grunde das Merkmal, das sich dem menschlichen Auge über jedes andere Merkmal hinaus nähert. Mit Seaborn können Sie mit Farben spielen, indem Sie verschiedene Funktionen wie color_palette (), hls_palette (), husl_palette () usw. verwenden. Sehen Sie sich die Farben an, die derzeit in seaborn vorhanden sind.

BEISPIEL:

importiere numpy als np importiere seaborn als sns importiere matplotlib.pyplot als plt sns.set () presentcolors = sns.color_palette () sns.palplot (presentcolors)

AUSGABE:

Das obige Bild zeigt die Farben, die in Seaborn vorhanden sind. Ich habe es mit der Funktion palplot () gemacht. Für tiefere Variationen können Sie hls_palette (), husl_palette () usw. verwenden.

Dies bringt uns zum Ende des Python Seaborn Tutorial. Ich hoffe du hast alles klar verstanden. Stellen Sie sicher, dass Sie so viel wie möglich üben .

Hast du eine Frage an uns? Bitte erwähnen Sie es im Kommentarbereich dieses Blogs „Python Seaborn Tutorial“. Wir werden uns so schnell wie möglich bei Ihnen melden.

Um detaillierte Informationen zu Python und seinen verschiedenen Anwendungen zu erhalten, können Sie sich live anmelden mit 24/7 Support und lebenslangem Zugriff.