2011-10-30 12 views
10

Se volevo disegnare frecce al posto delle linee degli assi usando una delle funzioni freccia/freccia, come faccio a mostrare la linea/la punta della freccia? Esempio di seguito:come utilizzare pyplot.arrow o patches.Arrow in matplotlib?

import matplotlib.pyplot as plt 
import matplotlib.patches as pts 

plt.ion() 
ax = plt.axes() 
ax.set(xlim=[0,1],ylim=[0,1],autoscale_on=False,clip_on=False) 
ax.set(frame_on=False,xticks=[],yticks=[]) 
pts.Arrow(0,0,1,0,width=0.05) 
plt.arrow(0,0,0,1,shape='right',lw=3,fill=True) 
ax.text(1,0,'functionalization', 
     verticalalignment='top', 
     horizontalalignment='center') 
ax.text(0,1,'void space/structure') 
plt.draw() 

pts.Arrow disegna nulla, e plt.arrow disegna una linea, ma non punta a freccia.

risposta

14
plt.arrow(0,0,0,1, shape='full', lw=3, length_includes_head=True, head_width=.01)