Wie man in Matplotlib horizontale und vertikale Linien zeichnet
-
axhline
undaxvline
, um horizontale und vertikale Linien in Matplotlib zu zeichnen -
hlines
undvlines
um horizontale und vertikale Linien in Matplotlib zu zeichnen - Abschluss des Zeichnens von horizontalen und vertikalen Linien in Matplotlib
In diesem Tutorial stellen wir zwei Methoden vor, um horizontale und vertikale Linien in Matplotlib zu zeichnen. Diese beiden Methoden verwenden unterschiedliche Koordinaten in Matplotlib.
axhline()
/axvline()
dlines()
/vlines()
axhline
und axvline
, um horizontale und vertikale Linien in Matplotlib zu zeichnen
axhline
um eine horizontale Linie zu zeichnen
matplotlib.pyplot.axhline(y=0, xmin=0, xmax=1, hold=None, **kwargs)
axhline
zeichnet eine horizontale Linie an der Position von y
in den Datenkoordinaten der horizontalen Linie, beginnend mit xmin
bis xmax
, die zwischen 0.0
und 1.0
liegen sollte, wobei 0.0
die äußerste linke und 1.0
die äußerste rechte Seite des Plots ist.
from matplotlib import pyplot as plt
xdata = list(range(10))
ydata = [_ * 2 for _ in xdata]
plt.plot(xdata, ydata, "b")
plt.axhline(y=5, xmin=0.1, xmax=0.9)
plt.grid()
plt.show()
axvline
um eine vertikale Linie zu zeichnen
Ähnlich,
matplotlib.pyplot.axvline(x=0, ymin=0, ymax=1, hold=None, **kwargs)
axvline
zeichnet eine vertikale Linie an der Position von x
in der Datenkoordinate der vertikalen Linie, beginnend mit ymin
bis ymax
, die zwischen 0.0
und 1.0
liegen sollte, wobei 0.0
das untere Ende und 1.0
das obere Ende des Plots ist.
from matplotlib import pyplot as plt
xdata = list(range(10))
ydata = [_ * 2 for _ in xdata]
plt.plot(xdata, ydata, "b")
plt.axvline(x=5, ymin=0.1, ymax=0.9)
plt.grid()
plt.show()
Wie oben erwähnt, beziehen sich xmin
/ xmax
und ymin
/ ymax
auf den Plot, aber nicht auf die Datenzeilen.
Wenn wir also den Plot vergrößern oder verkleinern, werden die Anfangs- und Endpunkte der horizontalen und vertikalen Linien mit dem Bezug auf die Datenkoordinate aktualisiert, bleiben aber an den relativen Positionen in der Plotkoordinate hängen. Zum besseren Verständnis können wir die untenstehende Animation betrachten.
hlines
und vlines
um horizontale und vertikale Linien in Matplotlib zu zeichnen
Wenn wir wollen, dass sich die gezeichneten horizontalen und vertikalen Linien automatisch ändern, um die relative Position zu den Datenkoordinaten beizubehalten, müssen wir hlines
und vlines
verwenden, um Linien zu zeichnen.
hlines(y, xmin, xmax)
Hier sind y
, xmin
und xmax
die Werte der Datenkoordinate.
vlines(x, ymin, ymax)
Hier sind x
, ymin
und ymax
die Werte der Datenkoordinate.
Sehen wir uns die Beispielcodes unten an.
from matplotlib import pyplot as plt
xdata = list(range(10))
ydata = [_ * 2 for _ in xdata]
plt.plot(xdata, ydata, "b")
plt.hlines(y=5, xmin=0, xmax=10)
plt.vlines(x=5, ymin=0, ymax=20)
plt.grid()
plt.show()
Abschluss des Zeichnens von horizontalen und vertikalen Linien in Matplotlib
Wenn Sie die Linie auf die Handlung beziehen wollen, sollten axhline
und axvline
die bessere Option sein.
Wenn Sie es vorziehen, dass die Linie an der Datenkoordinate bleibt, sind hlines
und vlines
die bessere Wahl.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook