Solución:
Puede crear una flecha de dos puntas con el annotate
método con anotación de texto en blanco y estableciendo el arrowprops
dictar para incluir arrowstyle="<->"
Como se muestra abajo:
import matplotlib.pyplot as plt
plt.annotate(s="", xy=(1,1), xytext=(0,0), arrowprops=dict(arrowstyle="<->"))
plt.show()
Puede crear flechas de dos puntas trazando dos plt.arrow
que se superponen. El siguiente código ayuda a hacer eso.
import matplotlib.pyplot as plt
plt.figure(figsize=(12,6))
# red arrow
plt.arrow(0.15, 0.5, 0.75, 0, head_width=0.05, head_length=0.03, linewidth=4, color="r", length_includes_head=True)
# green arrow
plt.arrow(0.85, 0.5, -0.70, 0, head_width=0.05, head_length=0.03, linewidth=4, color="g", length_includes_head=True)
plt.show()
Y el resultado es así:
Puede ver que la flecha roja se traza primero y luego la verde. Cuando proporcionas las coordenadas correctas, parece una doble cabeza.
Puedes usar matplotlib.patches.FancyArrowPatch
para dibujar una flecha de dos puntas. Esta clase permite especificar arrowstyle
:
import matplotlib.patches as patches
p1 = patches.FancyArrowPatch((0, 0), (1, 1), arrowstyle="<->", mutation_scale=20)
p2 = patches.FancyArrowPatch((1, 0), (0, 1), arrowstyle="<|-|>", mutation_scale=20)
Esto produce las siguientes flechas:
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)