首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >matplotlib矩形图中Y标签(位置)的动态设置

matplotlib矩形图中Y标签(位置)的动态设置
EN

Stack Overflow用户
提问于 2020-08-20 13:40:16
回答 1查看 82关注 0票数 0

我正在使用matplotlib.patches.rectangle包来绘制多个矩形。在Y轴上,我试着给这些矩形命名。矩形的数量不是固定的,因此标签的位置必须根据矩形的数量动态变化。

下面我已经附加了不同场景的图像:1个rect或2个rect或3个rect等等。目前,我已经在文本之间手动设置了Y标签,但有没有办法自动使文本显示在矩形的中心,这取决于矩形的数量。

我正在为3个不同的情况使用手动空间,但在现实中,情况不会局限于3个,所以需要更动态的东西。

我的代码(用于2-rect):ax.set_ylabel('LAYER-1 LAYER-2', color='g')

我的代码(用于3-rect):ax.set_ylabel('LAYER-1 LAYER-2 LAYER-3', color='g')

EN

回答 1

Stack Overflow用户

发布于 2020-08-20 14:52:35

可能还有其他方法可以做到这一点,但我使用了ax.text(x,y,text)进行设置。X值可以是负数。文本位置手动调整。

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

fig = plt.figure(figsize=(4,3),dpi=144)
ax = fig.add_subplot(111)

for i in range(4):
    y_pos = 5+(i*20)
    r = patches.Rectangle(xy=(2, y_pos), width=96, height=10, color='r', fill=False)
    ax.text(-22, y_pos+2, 'Layer-{}'.format(i), color='g')
    ax.add_patch(r)

ax.set_xlim(0,100)
ax.set_ylim(0,100)

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

https://stackoverflow.com/questions/63498916

复制
相关文章

相似问题

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