Erstellung von Multi-Plot-Rastern
Ein FacetGrid ist die grundlegende Struktur, mit der eine Matrix von Diagrammen erstellt werden kann, die durch kategoriale Variablen definiert ist.
Dies lässt sich als zweistufiger Prozess verstehen:
- Erstellen des Rasters: Das "Skelett" (Zeilen und Spalten) wird basierend auf den Daten definiert. In diesem Stadium sind die Diagramme leer;
- Zuordnen der Daten: Mit der Methode
.map()wird ein bestimmter Diagrammtyp (Histogramm, Streudiagramm usw.) auf jede Zelle dieses Rasters "gemalt".
Der Arbeitsablauf
# Step 1: Initialize the grid
# This creates empty subplots: one for each 'time' (Lunch/Dinner)
g = sns.FacetGrid(data=df, col='time')
# Step 2: Map a plot onto the grid
# This draws a histogram of 'total_bill' in every empty subplot
g.map(sns.histplot, 'total_bill')
Wichtige Parameter
col/row: Variablen, die die Rasterstruktur definieren;height: Höhe (in Zoll) jeder einzelnen Facette (Unterdiagramm);.map(func, *args, **kwargs):func: Die zu verwendende Plot-Funktion (z. B.sns.histplot,plt.scatter);
*args: Die zu plottenden Spaltennamen (z. B.'total_bill');**kwargs: Stil-Argumente (z. B.color='red').
Swipe to start coding
Analyse der Verteilung der Gesamtrechnungen, aufgeschlüsselt nach Wochentag und Raucherstatus.
- Stil auf
'whitegrid'setzen. Hintergrundfarbe auf'cornsilk'festlegen ('axes.facecolor'). - FacetGrid initialisieren (
g):- Das
tips-Datenset (df) verwenden.
- Das
- Für jeden
'day'eine Spalte erstellen.- Für jeden
'smoker'-Status eine Zeile erstellen.
- Für jeden
- Die
heightjedes Subplots auf3setzen.
- Histogramm auf dieses Grid abbilden:
sns.histplotals Plot-Funktion verwenden.
- Die Variable
'total_bill'plotten. - Die
colorauf'olive'setzen.- Eine KDE-Kurve hinzufügen (
kde=True).
- Eine KDE-Kurve hinzufügen (
- Die Balkenfüllung entfernen (
fill=False), um die Umrisse besser zu sehen. - Die
binwidthauf4setzen.
- Diagramm anzeigen.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Großartig!
Completion Rate verbessert auf 4.55
Erstellung von Multi-Plot-Rastern
Swipe um das Menü anzuzeigen
Ein FacetGrid ist die grundlegende Struktur, mit der eine Matrix von Diagrammen erstellt werden kann, die durch kategoriale Variablen definiert ist.
Dies lässt sich als zweistufiger Prozess verstehen:
- Erstellen des Rasters: Das "Skelett" (Zeilen und Spalten) wird basierend auf den Daten definiert. In diesem Stadium sind die Diagramme leer;
- Zuordnen der Daten: Mit der Methode
.map()wird ein bestimmter Diagrammtyp (Histogramm, Streudiagramm usw.) auf jede Zelle dieses Rasters "gemalt".
Der Arbeitsablauf
# Step 1: Initialize the grid
# This creates empty subplots: one for each 'time' (Lunch/Dinner)
g = sns.FacetGrid(data=df, col='time')
# Step 2: Map a plot onto the grid
# This draws a histogram of 'total_bill' in every empty subplot
g.map(sns.histplot, 'total_bill')
Wichtige Parameter
col/row: Variablen, die die Rasterstruktur definieren;height: Höhe (in Zoll) jeder einzelnen Facette (Unterdiagramm);.map(func, *args, **kwargs):func: Die zu verwendende Plot-Funktion (z. B.sns.histplot,plt.scatter);
*args: Die zu plottenden Spaltennamen (z. B.'total_bill');**kwargs: Stil-Argumente (z. B.color='red').
Swipe to start coding
Analyse der Verteilung der Gesamtrechnungen, aufgeschlüsselt nach Wochentag und Raucherstatus.
- Stil auf
'whitegrid'setzen. Hintergrundfarbe auf'cornsilk'festlegen ('axes.facecolor'). - FacetGrid initialisieren (
g):- Das
tips-Datenset (df) verwenden.
- Das
- Für jeden
'day'eine Spalte erstellen.- Für jeden
'smoker'-Status eine Zeile erstellen.
- Für jeden
- Die
heightjedes Subplots auf3setzen.
- Histogramm auf dieses Grid abbilden:
sns.histplotals Plot-Funktion verwenden.
- Die Variable
'total_bill'plotten. - Die
colorauf'olive'setzen.- Eine KDE-Kurve hinzufügen (
kde=True).
- Eine KDE-Kurve hinzufügen (
- Die Balkenfüllung entfernen (
fill=False), um die Umrisse besser zu sehen. - Die
binwidthauf4setzen.
- Diagramm anzeigen.
Lösung
Danke für Ihr Feedback!
single