我试着在matplotlib中画一个从(0.1,0.5)到(0.5,0.5)的箭头,基于这个例子(http://matplotlib.org/examples/pylab_examples/arrow_simple_demo.html):
f = plt.figure()
ax = plt.subplot(2, 1, 1)
plt.xlim([0, 1])
plt.ylim([0, 1])
ax.arrow(0.1, 0.5, 0.5, 0.5,
head_width=0.05,
head_length=0.1,
fc='k',
ec='k',
clip_on=False)
plt.show()
这应该产生一个水平箭头,但由于某种原因,它给出了一个倾斜的箭头,并没有结束在(0.5,0.5)。这里有什么问题吗?
1条答案
按热度按时间qc6wkl3g1#
从
Axes.arrow
和pyplot.arrow
:向轴添加箭头。
呼叫签名:
在指定的轴上绘制从
(x, y)
到(x + dx, y + dy)
的箭头。使用FancyArrow patch来构造箭头。所以,在你的箭头中,你有:
因此,您将绘制一个从
(0.1,0.5)
到(0.6,1.0)
的箭头。设置
dy=0
,你会得到一个水平箭头。要得到一个从(0.1,0.5)
到(0.5,0.5)
的箭头,你需要: