matplotlib中使用相对坐标确定标注位置

该博客介绍了如何在2行3列的matplotlib子图中,针对每个子图设置不同的xlim和ylim,并在每个子图的相同位置进行标注。通过使用ax.text的transform参数设置为ax.transAxes,可以实现相对坐标标注,确保标注位置在所有子图中保持一致。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我有一组2*3的 subplots ,每个的 xlimylim 都不一样,但是我想在每个子图的相同位置进行标注,怎么办呢?这个时候可以用相对坐标,在 ax.text 中specify transform=ax.transAxes

from matplotlib import pyplot as plt

fig, axes = plt.subplots(2,3)
xlims = (
	[1,2], [2,3], [3,4],
    [4,5], [5,6], [6,7]
)
ylims = (
    [4,5], [5,6], [6,7],
	[1,2], [2,3], [3,4]
)
for ind in range(6):
    row, col = ind // 3, ind % 3
    ax = axes[row, col]
    ax.set_xlim(xlims[ind])
    ax.set_ylim(ylims[ind])
    ax.text(
        0.2, 0.1, 'some text',
        horizontalalignment='center',  # 水平居中
        verticalalignment='center',  # 垂直居中
        transform=ax.transAxes  # 使用相对坐标
    )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值