啊!实际上,linestyle='dashed'
确实有效,只是箭头只在默认情况下被填充,没有线宽设置。他们是补丁而不是路径。
如果你做这样的事情:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.axis('equal')
ax.quiver((0,0), (0,0), (3,1), (1,0), angles='xy', scale_units='xy', scale=1,
linestyle='dashed', facecolor='none', linewidth=1)
ax.axis([-4, 4, -4, 4])
plt.show()
你得到虚线箭头,但可能并不完全符合你脑子里。
可以玩弄一些参数变得有点接近,但它仍然不是完全好看:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.axis('equal')
ax.quiver((0,0), (0,0), (3,1), (1,0), angles='xy', scale_units='xy', scale=1,
linestyle='dashed', facecolor='none', linewidth=2,
width=0.0001, headwidth=300, headlength=500)
ax.axis([-4, 4, -4, 4])
plt.show()
因此,另一种解决方法是使用舱口:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.axis('equal')
ax.quiver((0,0), (0,0), (3,1), (1,0), angles='xy', scale_units='xy', scale=1,
hatch='ooo', facecolor='none')
ax.axis([-4, 4, -4, 4])
plt.show()
'线型='dashed''应该工作,[根据文档](http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.quiver)。但显然这不起作用。这可能是一个错误。 – 2013-03-12 02:46:38
@JoeKington::(对于解决方法有什么建议吗? – Mehrdad 2013-03-12 02:53:03
不是我的头顶,不幸的是... – 2013-03-12 03:07:38