You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于Matplotlib add_subplot()索引机制的技术问询

Matplotlib add_subplot() 索引机制详解

参数核心含义

add_subplot(nrows, ncols, index) 三个参数的作用明确:

  • nrows:将整个画布划分为指定行数
  • ncols:将整个画布划分为指定列数
  • index:子图在划分出的网格中的位置序号,从1开始,按行优先顺序排列(先填满第一行的所有列,再依次进入下一行)

关键行为逻辑

每次调用add_subplot时,都是基于整个画布的尺寸重新划分网格,而非在剩余空间中添加子图。这也是你之前代码布局混乱的核心原因:

  • add_subplot(2, 2, 1):把画布分成2行2列,取第一行第一列的位置
  • add_subplot(3, 2, 2):重新把整个画布分成3行2列,取第一行第二列的位置,该子图会覆盖画布对应区域的原有内容
  • add_subplot(3, 1, 3):再次将画布分成3行1列,取第三行整行的位置
  • add_subplot(3, 2, 4):又把画布分成3行2列,取第二行第二列的位置

与subplot_mosaic的差异

subplot_mosaic是先定义整体布局结构,Matplotlib自动计算每个子图的位置与尺寸;而add_subplot每次独立基于全画布划分网格,无法直接实现跨行列的复杂布局,除非使用add_subplot(3,2,(1,2))这种合并单元格的写法(但依然基于统一的网格划分逻辑)

内容的提问来源于stack exchange,提问作者Linus Kubu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 10:12:44