matplotlib
Boxplots
Suche…
Boxplot-Funktion
Matplotlib hat eine eigene Implementierung von Boxplot . Der relevante Aspekt dieser Funktion ist, dass das Boxplot standardmäßig den Median (Perzentil 50%) mit einer roten Linie anzeigt. Das Kästchen steht für Q1 und Q3 (Perzentile 25 und 75), und die Whisker geben eine Vorstellung von dem Bereich der Daten (möglicherweise bei Q1 - 1,5 IQR; Q3 + 1,5 IQR; IQR ist der Interquartilbereich, aber dies hat keine Bestätigung). Beachten Sie auch, dass Proben außerhalb dieses Bereichs als Marker angezeigt werden (diese werden Flieger genannt).
HINWEIS: Nicht alle Implementierungen von Boxplot folgen den gleichen Regeln. Möglicherweise verwendet das allgemeinste Boxplot-Diagramm die Whisker, um das Minimum und das Maximum darzustellen (wodurch Flieger nicht existieren). Beachten Sie auch, dass dieses Diagramm manchmal als Box-Whisker-Diagramm und Box-Whisker- Diagramm bezeichnet wird .
Das folgende Rezept zeigt einige der Möglichkeiten, die Sie mit der aktuellen Matplotlib-Implementierung von Boxplot machen können:
import matplotlib.pyplot as plt
import numpy as np
X1 = np.random.normal(0, 1, 500)
X2 = np.random.normal(0.3, 1, 500)
# The most simple boxplot
plt.boxplot(X1)
plt.show()
# Changing some of its features
plt.boxplot(X1, notch=True, sym="o") # Use sym="" to shown no fliers; also showfliers=False
plt.show()
# Showing multiple boxplots on the same window
plt.boxplot((X1, X2), notch=True, sym="o", labels=["Set 1", "Set 2"])
plt.show()
# Hidding features of the boxplot
plt.boxplot(X2, notch=False, showfliers=False, showbox=False, showcaps=False, positions=[4], labels=["Set 2"])
plt.show()
# Advanced customization of the boxplot
line_props = dict(color="r", alpha=0.3)
bbox_props = dict(color="g", alpha=0.9, linestyle="dashdot")
flier_props = dict(marker="o", markersize=17)
plt.boxplot(X1, notch=True, whiskerprops=line_props, boxprops=bbox_props, flierprops=flier_props)
plt.show()
Dies führt zu folgenden Darstellungen:
- Standard-Matplotlib-Boxplot
- Einige Funktionen des Boxplots mit Funktionsargumenten ändern
- Mehrere Boxplots im selben Plotfenster
- Einige Funktionen des Boxplots verstecken
- Erweiterte Anpassung eines Boxplots mit Requisiten
Wenn Sie beabsichtigen , eine erweiterte Anpassung Ihrer boxplot zu tun , sollten Sie wissen , dass die Requisiten Wörterbücher , die Sie (zum Beispiel) bauen:
line_props = dict(color="r", alpha=0.3)
bbox_props = dict(color="g", alpha=0.9, linestyle="dashdot")
flier_props = dict(marker="o", markersize=17)
plt.boxplot(X1, notch=True, whiskerprops=line_props, boxprops=bbox_props, flierprops=flier_props)
plt.show()
... beziehen sich meistens (wenn nicht alle) auf Line2D- Objekte. Das bedeutet, dass nur die in dieser Klasse verfügbaren Argumente geändert werden können. Sie werden feststellen, dass Schlüsselwörter wie whiskerprops
, boxprops
, flierprops
und capprops
. Dies sind die Elemente, die Sie benötigen, um ein Props-Wörterbuch bereitzustellen, um es weiter anzupassen.
HINWEIS: Eine weitere Anpassung des Boxplots mit dieser Implementierung kann sich als schwierig erweisen. In einigen Fällen kann die Verwendung anderer Matplotlib-Elemente wie Patches zum Erstellen eines eigenen Boxplots von Vorteil sein (z. B. erhebliche Änderungen am Boxelement).