2011-09-22 39 views
20

Tôi có biểu đồ đường mà tôi muốn vẽ bằng cách sử dụng các mũi tên thay vì các dòng. Nghĩa là, đường thẳng giữa các cặp điểm liên tiếp phải là mũi tên đi từ điểm đầu tiên đến điểm thứ hai.Lô đất với các mũi tên trong matplotlib

Tôi biết về chức năng arrow, nhưng điều đó dường như chỉ làm các mũi tên riêng lẻ. Trước khi tôi làm một cách để thử và sử dụng điều này để làm một cốt truyện, có cách nào tốt hơn để làm điều đó?

Trả lời

32

Bạn có thể làm điều này với quiver, nhưng hơi khó để có được đối số từ khóa ngay.

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

Nếu bạn quá cần phải sửa đổi Danh sách/Array lát bằng dấu phẩy để sử dụng rung động theo cách này, tôi thấy lời nhắc nhở này có ích: http://structure.usc.edu/numarray/node26. html – thadk

Các vấn đề liên quan