首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >loglog图中的Matplotlib箭头

loglog图中的Matplotlib箭头
EN

Stack Overflow用户
提问于 2017-09-10 10:58:44
回答 1查看 1.7K关注 0票数 6

我试图用matplotlib将一个箭头绘制到日志图中,如下所示:

我知道有人建议关闭轴(Matplotlib: Draw a vertical arrow in a log-log plot),但我确实需要轴。此外,这项建议似乎没有改变任何情况(除了如预期那样关掉斧头外):

代码语言:javascript
复制
plt.figure();plt.loglog([1,10,60],[1,0.1,0.005])
plt.axis('off')
plt.arrow(2,0.002,5,0.098,'k',head_length=0.3)

到目前为止,我的工作是创建一个带有线性轴环境的不可见嵌入(意为:轴关闭),并在嵌入中绘制箭头,这是工作的,但确实有点不愉快。有更简单的方法吗?或者人们建议添加这些类型的附加功能。inkscape,主情节完成后?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-10 11:21:23

您可以使用plt.annotate而不是plt.arrow。这一点在plt.arrow中有说明。

所产生的箭头受轴长比和限制的影响。这可能会产生一个箭头,它的头与它的茎不成正方形。若要创建头部与其阀杆成方的箭头,请使用annotate()

例如:

代码语言:javascript
复制
import matplotlib.pyplot as plt

plt.figure()
plt.loglog([1,10,60],[1,0.1,0.005])
plt.annotate('', xy=(5, 0.098), xytext=(2, 0.002), 
            arrowprops=dict(facecolor='black', shrink=0.),
            )

plt.ylim(0.001, 10)

plt.show()

请注意,您可能需要调整轴的限制,以使箭头适合绘图。在这里,我不得不改变ylim

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46139945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档