gpt4 book ai didi

python - 如何让箭头提示在 Python 中的指定坐标处开始/结束?

转载 作者:太空狗 更新时间:2023-10-30 00:40:00 25 4
gpt4 key购买 nike

我正在尝试使用 matplotlib 的注释在两端绘制一 strip 箭头的线。但是当我绘制它们时,箭头提示不会如图所示在指定坐标处开始或结束。提示应该在 0.6 和 0.8 开始和结束,但实际上不是。

enter image description here

可重现的代码

import matplotlib.pyplot as plt
fig = plt.figure(figsize = (5, 5))
plt = plt.subplot(111)
plt.axvline(0.6)
plt.axvline(0.8)
plt.axhline(0.6)
plt.axhline(0.8)

plt.annotate('', xy = (0.6, 0.33), xycoords = 'axes fraction', \
xytext = (0.8, 0.33), textcoords = 'axes fraction', fontsize = 7, \
color = '#303030', arrowprops=dict(edgecolor='black', arrowstyle = '<->'))

plt.annotate('', xy = (0.33, 0.6), xycoords = 'axes fraction', \
xytext = (0.33, 0.8), textcoords = 'axes fraction', fontsize = 7, \
color = '#303030', arrowprops=dict(edgecolor='black', arrowstyle = '<->'))

fig.savefig('arrow_head.pdf')

为什么会这样?以及如何让提示在各自的坐标开始或结束?

最佳答案

根据文档here ,路径被 shr​​inkAshr​​inkB 中给定的参数缩小,大概是为了在箭头指向某物时提供一点间距。默认值为 2,因此如果将它们设置为 0,间距应该消失。像这样:

plt.annotate('', xy = (0.6, 0.33),  xycoords = 'axes fraction', \
xytext = (0.8, 0.33), textcoords = 'axes fraction', fontsize = 7, \
color = '#303030', arrowprops=dict(edgecolor='black', arrowstyle = '<->', shrinkA = 0, shrinkB = 0))

Graph with lines and arrows

关于python - 如何让箭头提示在 Python 中的指定坐标处开始/结束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32233341/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com