Matplotlib für Fortgeschrittene

Boxplots und Violinplots

Die Streuung mehrerer Gruppen mit ax.boxplot und ax.violinplot vergleichen.

Einführung

Ein Balkendiagramm der Mittelwerte verbirgt, wie stark die Werte streuen. Ein Boxplot zeigt den Median, die mittlere Hälfte der Daten (die Box), den üblichen Bereich (die Whisker) und Ausreißer als Punkte. Ein Violinplot zeigt die ganze Form jeder Gruppe.

Jede Liste in scores wird zu einer Box. Die Linie in der Box ist der Median, die Box umfasst die mittleren 50 % der Punktzahlen, und die Whisker reichen bis zu den entferntesten Werten, die keine Ausreißer sind. Klasse B hat eine viel kleinere Box: ihre Punktzahlen liegen eng beieinander. set_xticks benennt die Boxen bei x = 1, 2 und 3; ax.violinplot(scores) würde dieselben Gruppen als Violinen zeichnen.

Interaktive Visualisierung

Wechsle zwischen Boxplot und Violinplot, zeige jede Punktzahl als Punkt und ändere, wie stark Klasse C streut.

Ausführbares Matplotlib-Beispiel

Matplotlib
Code ausführen →
main.py
import matplotlib.pyplot as plt
import numpy as np

rng = np.random.default_rng(5)
scores = [rng.normal(70, 8, 80), rng.normal(75, 4, 80), rng.normal(65, 12, 80)]

fig, ax = plt.subplots(figsize=(7, 4))
ax.boxplot(scores)
ax.set_xticks([1, 2, 3], ["Class A", "Class B", "Class C"])
ax.set_ylabel("Score")
ax.set_title("Test scores by class")
plt.show()
Run-Button für dieses Beispiel erstellen Das Diagramm, das dieser Code zeichnet
Boxplots und Violinplots