【Matplotlib】(六)子图

文章目录

  • 一、plt.subplot
    • 1.1 nrows, ncols, index:一共几行、一共几列,第几个图
  • 二、plt.subplots
    • 2.1 plt.subplots()不带参数
    • 2.2 nrows 子图有几行
    • 2.3 ncols 子图有几行
    • 2.4 sharex同一列的axes共用同一个x轴
    • 2.5 sharey同一行的axes共用同一个y轴
    • 2.6 squeeze 是否进行挤压操作
    • 2.7 demo
  • 三、plt.subplot和plt.subplots的关系

一、plt.subplot

1.1 nrows, ncols, index:一共几行、一共几列,第几个图

  • (1)plt.subplot(2, 3, 5) 和 plt.subplot(235) 是一样一样的
  • (2)所有的数字不能超过10
  • (3)plt.subplot其实是对plt.add_axes添加轴域的包装
    【Matplotlib】(六)子图_第1张图片

二、plt.subplots

2.1 plt.subplots()不带参数

  • (1)与调用plt.subplots(1, 1)效果相同
  • (2)返回一个Figure对象和Axes对象
    【Matplotlib】(六)子图_第2张图片

2.2 nrows 子图有几行

  • (1)只指定行数,列数默认为1
    【Matplotlib】(六)子图_第3张图片

2.3 ncols 子图有几行

  • (1)只指定列数,行数默认为1
    【Matplotlib】(六)子图_第4张图片
    【Matplotlib】(六)子图_第5张图片

2.4 sharex同一列的axes共用同一个x轴

【Matplotlib】(六)子图_第6张图片

2.5 sharey同一行的axes共用同一个y轴

【Matplotlib】(六)子图_第7张图片

2.6 squeeze 是否进行挤压操作

  • (1)布尔类型,可选参数,默认:True。
  • (2)如果是True,额外的维度从返回的Axes(轴)对象中挤出。
    》如果只有一个子图被构建(nrows=ncols=1),结果是单个Axes对象作为标量被返回。
    》对于N1或1N个子图,返回一个1维数组。
    》对于N*M,N>1和M>1返回一个2维数组。
  • (3)如果是False,不进行挤压操作:返回一个元素为Axes实例的2维数组,即使它最终是1x1。
    【Matplotlib】(六)子图_第8张图片

2.7 demo

【Matplotlib】(六)子图_第9张图片

三、plt.subplot和plt.subplots的关系

  • (1)subplot返回的是一个轴域Axes对象。
  • (2)subplots返回的是一个Figure对象,加一个存放Axes对象的数组。

你可能感兴趣的:(【Matplotlib】(六)子图)