我尝试根据此示例(http://matplotlib.org/examples/pylab_examples/arrow_simple_demo.html)在matplotlib中绘制从(0.1,0.5)到(0.5,0.5)的箭头:
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()
Run Code Online (Sandbox Code Playgroud)
这应该会产生一个水平箭头,但由于某种原因,它给出了一个不以 (0.5,0.5) 结尾的倾斜箭头。这里出了什么问题?
Run Code Online (Sandbox Code Playgroud).arrow(x, y, dx, dy, hold=None, **kwargs)向轴添加箭头。
呼叫签名:
Run Code Online (Sandbox Code Playgroud)arrow(x, y, dx, dy, **kwargs)在指定轴上绘制从
(x, y)到 的箭头(x + dx, y + dy)。使用 FancyArrow 补丁来构造箭头。
所以,在你的箭头中,你有:
x = 0.1,
y = 0.5,
dx = 0.5,
dy = 0.5
Run Code Online (Sandbox Code Playgroud)
(0.1,0.5)因此,您将绘制一个从到 的箭头(0.6,1.0)。
设置dy=0后你会得到一个水平箭头。(0.1,0.5)要获得从到 的箭头(0.5,0.5),您需要:
.arrow(x, y, dx, dy, hold=None, **kwargs)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2220 次 |
| 最近记录: |