加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 仅使左子图和底部子图(在MxN面板中)包含x和y轴标签

发布时间:2020-12-16 21:52:02 所属栏目:Python 来源:网络整理
导读:在NxM子图的面板中是否有任何方法只显示左列和底行的轴. A|N|N|NA|N|N|NA|N|N|NA|A|A|A 其中A =轴,N =无轴 有时我的子图是108,34,49等,它们都有相同的x和y轴.我只是希望它出现在该子集的最左侧和最底层.目前我必须知道它正在绘制哪个轴和做什么 if (figi-1)

在NxM子图的面板中是否有任何方法只显示左列和底行的轴.

A|N|N|N
A|N|N|N
A|N|N|N
A|A|A|A

其中A =轴,N =无轴

有时我的子图是10×8,3×4,4×9等,它们都有相同的x和y轴.我只是希望它出现在该子集的最左侧和最底层.目前我必须知道它正在绘制哪个轴和做什么

    if (figi-1) % 7 != 0:
        ax.set_yticklabels([])

    if figi < 29:
        ax1.set_xticklabels([])

我希望将此概括为任何NxM面板布置,而无需事先了解.
谢谢.

编辑:我找到了一种方法来做y轴.我使用以下方法设置了面板的数量:

nwide = 12
nhigh = 5

这意味着我可以做到

if (figi-1) % nwide != 0:
    ax.set_yticklabels([])

最底层的想法?

编辑:解决了. x轴如下:

if figi < (nwide*nhigh) - nwide:
    ax.set_xticklabels([])
最佳答案
最好的解决方案可能是pyplot.subplots().你可以这样做:

fig,axes = pyplot.subplots(nrows=3,ncols=4,sharex=True,sharey=True)

然后只有左轴和下轴会显示标签.

要访问每个子图,您可以像在矩阵中那样从轴获取它:ax = axes [i,j]

要控制刻度位置,您可以使用:

ax.xaxis.set_tick_position('bottom')
ax.yaxis.set_tick_position('left')

要设置轴标签,您可以执行以下操作:

ax.set_label_text('Something')

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读