2011-09-22 22 views
20

Mam wykres liniowy, który chcę wydrukować za pomocą strzałek zamiast linii. Oznacza to, że linia między kolejnymi parami punktów powinna być strzałką przechodzącą od pierwszego punktu do drugiego punktu.Wykres liniowy ze strzałkami w matplotlib

Znam funkcję arrow, ale wydaje się, że wykonuje ona tylko pojedyncze strzałki. Zanim opracuję sposób na wykorzystanie tego do wykonania całej fabuły, czy istnieje lepszy sposób na zrobienie tego?

Odpowiedz

32

Możesz to zrobić za pomocą quiver, ale trochę trudniej jest uzyskać poprawne argumenty słów kluczowych.

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() 

enter image description here

+0

Jeśli też trzeba zmodyfikować plasterki List/tablicę z przecinkami używać kołczan w ten sposób znalazłem to przypomnienie poręczny: http://structure.usc.edu/numarray/node26. html – thadk

Powiązane problemy