2011-10-30 12 views
10

Si quería dibujar flechas en lugar de líneas de eje con una de las funciones de flecha/flecha, ¿cómo puedo mostrar la línea/punta de flecha? Ejemplo a continuación:cómo usar pyplot.arrow o parches.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 atrae nada, y plt.arrow dibuja una línea, pero sin punta de flecha.

Respuesta

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