如何使用matplotlib

时间:2018-12-19 05:05:34

标签: matplotlib

我正在使用代码

import matplotlib.pyplot as plt

plt.figure(1)
plt.axis(xmin=0, xmax=60, ymin=0, ymax=0.25)
plt.arrow(30, 0.01, 10, 0.1, head_width=0.05, head_length=1, length_includes_head=True)
plt.savefig('arrow.png')

,我希望箭头指向的方向与箭头所指的方向相同。但事实并非如此:

enter image description here

对此可以做什么(为什么会发生?)

1 个答案:

答案 0 :(得分:1)

部分原因here简短地提到为:

  

注释

     

结果箭头受轴长宽比和限制的影响。这可能会产生箭头,该箭头的头部与杆柄不垂直。要创建一个箭头,该箭头的头部与其茎成直角,请使用annotate()例如:

您介意这样做吗?

import matplotlib.pyplot as plt

plt.figure(1)
plt.axis(xmin=0, xmax=60, ymin=0, ymax=0.25)
# plt.arrow(30, 0.01, 10, 0.1, head_width=0.05, head_length=1, length_includes_head=True)
plt.annotate("", xy=(40, 0.11), xytext=(30, 0.01), arrowprops=dict(headwidth=10, headlength=10, width=0.1))
plt.savefig('arrow.png')

enter image description here