Cómo trazar una línea horizontal y vertical en Matplotlib
-
axhline
yaxvline
para trazar líneas horizontales y verticales en Matplotlib -
hlines
yvlines
para trazar líneas horizontales y verticales en Matplotlib - Conclusión del dibujo de líneas horizontales y verticales en Matplotlib
En este tutorial introduciremos dos métodos para dibujar líneas horizontales y verticales en Matplotlib. Estos dos métodos utilizan diferentes coordenadas en Matplotlib.
axhline()
/axvline()
hlines()
/vlines()
axhline
y axvline
para trazar líneas horizontales y verticales en Matplotlib
axhline
para trazar una línea horizontal
matplotlib.pyplot.axhline(y=0, xmin=0, xmax=1, hold=None, **kwargs)
La axhline
traza una línea horizontal en la posición de y
en la coordenada de datos de la línea horizontal, comenzando desde xmin
a xmax
que debe estar entre 0.0
y 1.0
, donde 0.0
es el extremo izquierdo del gráfico y 1.0
es el extremo derecho del gráfico.
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
para trazar una línea vertical
De manera similar,
matplotlib.pyplot.axvline(x=0, ymin=0, ymax=1, hold=None, **kwargs)
La axvline
traza una línea vertical en la posición de x
en la coordenada de datos de la línea vertical, comenzando desde ymin
hasta ymax
que debe estar entre 0.0
y 1.0
, donde 0.0
es la parte inferior del gráfico y 1.0
es la parte superior del gráfico.
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()
Como ya se ha dicho, xmin
/ xmax
y ymin
/ ymax
se refieren a la gráfica, pero no a las líneas de datos.
Por lo tanto, si acercamos o alejamos el gráfico, los puntos de inicio y final de las líneas horizontales y verticales se actualizarán con la referencia a la coordenada de los datos, pero se mantendrán las posiciones relativas en la coordenada del gráfico. Podríamos revisar la siguiente animación para entenderla mejor.
hlines
y vlines
para trazar líneas horizontales y verticales en Matplotlib
Si queremos que las líneas horizontales y verticales trazadas cambien automáticamente para mantener la posición relativa a la coordenada de los datos, necesitamos usar hlines
y vlines
para trazar las líneas.
hlines(y, xmin, xmax)
Aquí, y
, xmin
y xmax
son los valores de la coordenada de los datos.
vlines(x, ymin, ymax)
Aquí, x
, ymin
y ymax
son los valores de la coordenada de datos.
Veamos los códigos de ejemplo a continuación.
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()
Conclusión del dibujo de líneas horizontales y verticales en Matplotlib
Si necesitas que la línea esté referida al gráfico, axhline
y axvline
deberían ser la mejor opción.
Si prefieres que la línea se pegue a la coordenada de los datos, las hlines
y las vlines
son las mejores opciones.
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