Wie wird ein Histogramm für eine Liste von Daten in Matplotlib erstellt

Suraj Joshi 14 November 2020
Wie wird ein Histogramm für eine Liste von Daten in Matplotlib erstellt

Wir können die plt.hist() Methode verwenden, um Histogramme aus einer Liste von Daten zu zeichnen.

Syntax der Maplotlib hist() Methode

matplotlib.pyplot.hist(x,
                       bins=None,
                       range=None,
                       density=False,
                       weights=None,
                       cumulative=False,
                       bottom=None,
                       histtype='bar',
                       align='mid',
                       orientation='vertical',
                       rwidth=None,
                       log=False,
                       color=None,
                       label=None,
                       stacked=False, *,
                       data=None,
                       **kwargs)

Beispiele: Histogramm mit Matplotlib aus der Datenliste plotten

import matplotlib.pyplot as plt

data = [3, 4, 2, 3, 4, 5, 4, 7, 8, 5, 4, 6, 2, 1, 0, 9, 7, 6, 6, 5, 4]

n, bins, patches = plt.hist(data)
plt.xlabel("Values")
plt.ylabel("Frequency")
plt.title("Histogram")
plt.show()

Ausgabe:

Histogramm in Matplotlib mit Standardfächern

Hier haben wir Werte in einer Liste data. Wir geben diese Liste an den Befehl plt.hist() weiter, um ein Histogramm aus der Liste der Werte zu erzeugen. Die plt.hist() Methode gibt die Häufigkeit der Bins, die Endpunkte der Bins und eine Liste der zur Erstellung des Histogramms verwendeten Patches zurück.

In diesem Beispiel haben wir den Wert des Parameters bins nicht festgelegt. Standardmäßig ist die Anzahl der bins 10, so dass das Skript das Histogramm aus der Liste der Daten mit 10 Bins erstellt.

Zusätzlich können wir die Anzahl der Bins mit dem Befehl bins während der Erstellung des Histogramms kontrollieren.

import matplotlib.pyplot as plt

data = [3, 4, 2, 3, 4, 5, 4, 7, 8, 5, 4, 6, 2, 1, 0, 9, 7, 6, 6, 5, 4]
n, bins, patches = plt.hist(data, bins=20)
plt.xlabel("Values")
plt.ylabel("Frequency")
plt.title("Histogram with 20 bins")
plt.show()

Ausgabe:

Setzen Sie die Anzahl der Bins im Histogramm in Matplotlib

Dieses Verfahren zeigt das Histogramm aus 20 Bins an, die sich aus der gleichmäßigen Aufteilung des gesamten Bereichs der Listenwerte ergeben.

Standardmäßig ist der Wert des Parameters density auf False gesetzt; dies bedeutet, dass wir die exakte Anzahl der einzelnen Behälter im Histogramm erhalten. Wenn wir die Darstellung der Wahrscheinlichkeitsdichten jedes Behälters in der Liste erstellen wollen, müssen wir die density auf true setzen. Wenn density gleich true ist, wird die Fläche unter dem Histogramm zu 1 integriert.

import matplotlib.pyplot as plt

data = [3, 4, 2, 3, 4, 5, 4, 7, 8, 5, 4, 6, 2, 1, 0, 9, 7, 6, 6, 5, 4]
n, bins, patches = plt.hist(data, bins=20, density=True)
plt.xlabel("Weight")
plt.ylabel("Probability")
plt.title("Histogram with Probability Plot")
plt.show()

Ausgabe:

Histogramm mit Wahrscheinlichkeitsschaubild in Matplotlib

Wir können jetzt die Farbe des Histogramms mit dem Parameter color einstellen.

import matplotlib.pyplot as plt

data = [3, 4, 2, 3, 4, 5, 4, 7, 8, 5, 4, 6, 2, 1, 0, 9, 7, 6, 6, 5, 4]
n, bins, patches = plt.hist(data, bins=20, density=True, color="red")
plt.xlabel("Weight")
plt.ylabel("Probability")
plt.title("Red Histogram Plot")
plt.show()

Ausgabe:

Roter Histogramm-Plot in Matplotlib

Diese Methode erzeugt das Histogramm mit roter Farbe.

Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Verwandter Artikel - Matplotlib Visualizations