栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

了解matplotlib.subplots python

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

了解matplotlib.subplots python

不同的返回类型归因于

squeeze
关键字参数,默认情况下将
plt.subplots()
其设置为关键字参数
True
。让我们通过相应的包装来增强文档:

squeeze:布尔值,可选,默认值:True

  • 如果为True,则从返回的Axes对象中挤出额外的尺寸:

    • 如果仅构造一个子图(nrows = ncols = 1),则返回的单个Axes对象将作为标量返回。
      fig, ax = plt.subplots()

    • 对于Nx1或1xN子图,返回的对象是一个1D numpy对象数组,其中Axes对象以numpy 1D数组形式返回。
      fig, (ax1, ..., axN) = plt.subplots(nrows=N, ncols=1)
      (对于Nx1)
      fig, (ax1, ..., axN) = plt.subplots(nrows=1, ncols=N)
      (对于1xN)
    • 对于NxM,将N> 1和M> 1的子图作为2D数组返回。
      fig, ((ax11, .., ax1M),..,(axN1, .., axNM)) = plt.subplots(nrows=N,ncols=M)
    • 如果为False,则完全不进行压缩:返回的Axes对象始终是包含Axes实例的2D数组,即使最终它是1x1。
      fig, ((ax,),) = plt.subplots(nrows=1, ncols=1, squeeze=False)

      fig, ((ax,), .. ,(axN,)) = plt.subplots(nrows=N, ncols=1,squeeze=False)
      对于Nx1
      fig, ((ax, .. ,axN),) = plt.subplots(nrows=1, ncols=N,squeeze=False)
      对于1xN
      fig, ((ax11, .., ax1M),..,(axN1, .., axNM)) = plt.subplots(nrows=N,ncols=M)

或者,您可以始终使用解压后的版本

fig, ax_arr = plt.subplots(nrows=N, ncols=M, squeeze=False)

并索引数组以获得轴

ax_arr[1,2].plot(..)

因此,对于2 x 3的网格,如果设置

squeeze
为,则实际上并不重要
False
。结果将始终是2D数组。您可以将其解压缩为

fig, ((ax1, ax2, ax3),(ax4, ax5, ax6)) = plt.subplots(nrows=2, ncols=3)

具有

ax{i}
作为matplotlib轴对象,或者您可以使用打包版本

fig, ax_arr = plt.subplots(nrows=2, ncols=3)ax_arr[0,0].plot(..) # plot to first top left axesax_arr[1,2].plot(..) # plot to last bottom right axes


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/645480.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号