我有Matplotlib版本1.5.1,我面临一个有趣的问题。我想在我的情节中添加一个箭头,它的每一端都有头部,并指定颜色和宽度。然而,在研究Matplotlib documentation on this matter时,我意识到我可能不能同时拥有这两者。我可以让箭头朝向两端,但此箭头将具有默认颜色和线宽 - 如果我在arrowstyle
中包含arrowprops
,或者我可以省略arrowstyle
,则可以选择此选项在箭头属性中设置颜色和宽度,但之后我只有默认箭头。 有没有办法同时获得两者?
我有这段代码:
plt.annotate('', xy=(p[0][0]-p[0][2], 0), xycoords='data', xytext=(p[0][0], 0), textcoords='data', arrowprops=dict(arrowstyle: '<|-|>',color='k',lw=2.5))
会产生SyntaxError: invalid syntax
。
(注意:p
只是一个列表列表,我可以从中获取我的x和y值,我在循环中绘图)
答案 0 :(得分:4)
您应该可以使用 arrowprops 来设置颜色,宽度和其他属性。
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
ax.annotate('test', xy=(0.9, 0.9),
xycoords='data',
xytext=(0, 0),
textcoords='data',
arrowprops=dict(arrowstyle= '<|-|>',
color='blue',
lw=3.5,
ls='--')
)
ax.set_xlim(-0.1,1)
ax.set_ylim(-0.1,1)
fig.show()
这有帮助吗?