Tracé de ligne avec des flèches dans matplotlib

J'ai un graphique linéaire que je veux tracer en utilisant des flèches au lieu de lignes. Autrement dit, la ligne entre les paires successives de points devrait être une flèche allant du premier point au deuxième point.

Je connais la fonction arrow, mais cela ne semble faire que des flèches individuelles. Avant de trouver un moyen d'essayer de l'utiliser pour faire toute une intrigue, y a-t-il une meilleure façon de le faire?

23
demandé sur robintw 2011-09-22 22:13:29

2 réponses

Vous pouvez le faire avec quiver , mais il est un peu difficile d'obtenir les arguments des mots clés.

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 2*np.pi, 10)
y = np.sin(x)

plt.figure()
plt.quiver(x[:-1], y[:-1], x[1:]-x[:-1], y[1:]-y[:-1], scale_units='xy', angles='xy', scale=1)

plt.show()

entrez la description de l'image ici

37
répondu tom10 2011-09-25 03:48:38

Vous pouvez superposer un Quiver plot sur votre tracé linéaire.

2
répondu Avaris 2011-09-22 18:58:41