Python-Fehlerleiste

Ammar Ali 25 März 2022
Python-Fehlerleiste

In diesem Tutorial wird das Zeichnen von Daten mit Fehlerbalken mit der Funktion errorbar() von Matplotlib in Python besprochen.

Python-Fehlerleiste

Einige Werte sind nicht hundertprozentig genau und enthalten einige Fehler, wie die Werte von Widerständen. Die Widerstandswerte haben eine Toleranz oder einen Fehler wie 10%. Das heißt, der Wert ist nicht exakt, kann sich aber im Bereich von 10 % ändern.

Fehlerbalken in Python werden verwendet, um Fehler zusammen mit Datenpunkten in einem Diagramm darzustellen, um den in einem Wert vorhandenen Fehler anzuzeigen. Um Daten mit Fehlerbalken in Python zu plotten, können wir die Funktion errorbar() der Matplotlib verwenden.

Lassen Sie uns beispielsweise einige Zufallsdaten darstellen und jedem Wert Fehlerbalken hinzufügen. Siehe Code unten.

import matplotlib.pyplot as plt

x_values = [1, 2, 3, 4]
y_values = [1, 2, 3, 4]
y_error = [0.9, 0.5, 0.75, 0.25]

plt.errorbar(x_values, y_values, yerr=y_error)
plt.show()

Ausgabe:

Daten mit Fehlerbalken

In diesem Beispiel haben wir nur Fehler auf der y-Achse hinzugefügt, aber wir können auch Fehler auf der x-Achse hinzufügen. Die Balken in der obigen Ausgabe sind vertikal, aber im Falle eines x-Achsenfehlers sind die Balken horizontal.

Die Länge jedes Balkens hängt vom Wert des damit angegebenen Fehlers ab. Die Größe der Fehlervektoren sollte dieselbe sein wie die der Datenvektoren.

Die Funktion errorbar() hat ein Argument fmt, das die Eigenschaften der im Diagramm verwendeten Linie wie Linienstil, Farbe und Markierungssymbol festlegen kann.

Der Standardlinienstil ist durchgezogen, aber wir können ihn in die gestrichelte Linie --, die strichpunktierte Linie -. oder die gepunktete Linie : ändern. Die Standardfarbe ist Blau, aber wir können sie in jede Farbe wie Grün oder Rot ändern, indem wir den Anfangsbuchstaben der Farbe verwenden, z. B. r für Rot.

Wir können auch ein Markierungssymbol wie o für den Kreis, d für die Raute und * für die Sternmarkierung hinzufügen. Wir können das Argument ms verwenden, um die Größe des Markers zu ändern.

Lassen Sie uns zum Beispiel einen X-Achsen-Fehler im obigen Diagramm hinzufügen und den Linienstil, die Farbe und die Markierung ändern. Siehe Code unten.

import matplotlib.pyplot as plt

x_values = [1, 2, 3, 4]
y_values = [1, 2, 3, 4]
y_error = [0.9, 0.5, 0.75, 0.25]
x_error = [0.5, 0.5, 0.5, 0.5]

plt.errorbar(x_values, y_values, yerr=y_error, xerr=x_error, fmt="--ro", ms=10)
plt.show()

Ausgabe:

Ändern der Linieneigenschaften von Fehlerbalken

Wir können auch andere Markierungseigenschaften ändern, wie die Farbe der Markierungskante mit dem Parameter markeredgecolor oder mec, die Farbe der Markierungsfläche mit markerfacecolor oder mfc die Breite der Markierungskante mit dem Argument markeredgewidth oder mew.

Wir können auch die Eigenschaften der Fehlerbalken wie Farbe, Linienbreite, Kappengröße und Kappendicke der Fehlerbalken ändern. Standardmäßig ist die Farbe der Fehlerbalken dieselbe wie die Farbe des Linienstils, aber wir können sie in jede Farbe ändern, indem wir den Farbnamen oder den ersten Buchstaben des Farbnamens und den Parameter ecolor verwenden.

Standardmäßig entspricht die Breite der Fehlerbalken der Breite des Linienstils, aber wir können sie mit dem Parameter elinewidth auf eine beliebige Breite ändern. Standardmäßig sind Umhanggröße und -dicke null, aber wir können sie mit den Parametern capsize und capthick in einen beliebigen Fließkommawert ändern.

Ändern wir zum Beispiel die oben erwähnten Eigenschaften der Fehlerbalken. Siehe Code unten.

import matplotlib.pyplot as plt

x_values = [1, 2, 3, 4]
y_values = [1, 2, 3, 4]
y_error = [0.9, 0.5, 0.75, 0.25]
x_error = [0.5, 0.5, 0.5, 0.5]

plt.errorbar(
    x_values,
    y_values,
    yerr=y_error,
    xerr=x_error,
    fmt="--ro",
    ms=10,
    ecolor="g",
    elinewidth=3,
    capsize=10,
    capthick=3,
)
plt.show()

Ausgabe:

Ändern der Eigenschaften von Fehlerbalken

Mit dem Argument errorevery können wir an bestimmten Stellen auch Fehlerbalken ausblenden. Standardmäßig ist der Wert dieses Arguments 1, aber wir können ihn in einen ganzzahligen Wert ändern. Wenn wir beispielsweise den Wert des Arguments errorevery auf 2 setzen, erscheinen die Fehlerbalken auf der Hälfte der Punkte.

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook