GridSpec的具体使用

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

前言

一、GridSpec是什么?

用法:

参数: 

该类的方法: 

二、使用步骤

1.导入模块

2.创建画布实例

3.创建区域规则图实例 

4. 创建Gridspec对象,将实例传入add_subplot()

5.绘制图表 

三. 实例

1.导入模块

2. 创建区域规范图实例

3.创建Gridspec对象,将实例传入add_subplot()

4.紧密布局 

 注:

用法:

参数: 

 5.绘制图表 


前言

Matplotlib是Python中令人惊叹的可视化库,用于数组的二维图。 Matplotlib是一个基于NumPy数组的多平台数据可视化库,旨在与更广泛的SciPy堆栈配合使用。


一、GridSpec是什么?

matplotlib.gridspec.GridSpec类用于指定放置子图的网格的几何形状。为此,必须设置行数和列数。同时,也可以完成子图布局参数的调整。

用法:

class matplotlib.gridspec.GridSpec(nrows, ncols, figure=None,
 left=None, bottom=None, right=None, top=None, wspace=None, 
hspace=None, width_ratios=None, height_ratios=None)

参数: 

  • nrows:它是一个整数,代表网格中的行数。
  • ncols:它是一个整数,代表网格中的列数。
  • figure:它是用于绘制图形的可选参数。
  • left, right, top, bottom:这些是可选参数,用于将子图的范围定义为图形宽度或高度的一部分。
  • wspase:这是一个可选的float参数,用于保留子图之间的宽度空间。
  • hspace:它是一个可选的float参数,用于保留子图之间的高度空间。
  • width_ratios:它是一个可选参数,代表列的宽度比率。
  • height_ratios:它是一个可选参数,表示行的宽度比率

该类的方法: 

  • get_subplot_params(self, figure=None):它返回子图布局参数的字典。除非设置了图形属性,否则默认参数来自rcParams。
  • ight_layout(self, figure, renderer=None, pad=1.08, h_pad=None, w_pad=None, rect=None):它用于提供特定的填充以调整子图。这里pad是一个float值,用于将图形边和子图边之间的填充设置为字体大小的一部分。 h_pad和w_pad是可选参数,用于设置相邻子图之间的填充。 rect也用于规范包含所有子图区域的矩形的图形坐标。其默认值为(0,0,1,1)。它是一个由4个浮点数组成的元组。

二、使用步骤

1.导入模块

代码如下:

#导入模块
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec

2.创建画布实例

代码如下:

#创建画布实例
fig=plt.figure()

3.创建区域规则图实例 

代码如下:

#创建区域规则图实例
spec=gridspec.GridSpec(ncols=2,nrows=2,figure=fig)

4. 创建Gridspec对象,将实例传入add_subplot()

代码如下:

# 创建Gridspec对象,将实例传入add_subplot()
f_ax1=fig.add_subplot(spec[0,0])
f_ax2=fig.add_subplot(spec[0,1])
f_ax3=fig.add_subplot(spec[1,0])
f_ax4=fig.add_subplot(spec[1,1]

5.绘制图表 

代码如下:

#绘制图表
plt.show()

 效果如下:

 

三. 实例

1.导入模块

代码如下:

#导入模块
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec

2. 创建区域规范图实例

代码如下:

spec1 = gridspec.GridSpec(3,4,figure = fig)

3.创建Gridspec对象,将实例传入add_subplot()

代码如下:

#将实例传入plt_subplot()
ax1 = plt.subplot(spec1[0,:])       
ax2 = plt.subplot(spec1[1,0:2])     
ax3 = plt.subplot(spec1[1,2:4])     
ax4 = plt.subplot(spec1[2,0],projection = 'polar')    
ax5 = plt.subplot(spec1[2,1:4])

4.紧密布局 

代码如下:

#紧密布局
plt.tight_layout()

 注:

用法:
tight_layout(pad=1.08,h_pad=None,w_pad=None,rect=None)
参数: 

pad:表示画布边缘与子图边缘之间的空白区域大小

h_pad,w_pad:表示相邻子图之间的空白区域大小

rect:把所有坐标系实例打包在一起,整体进行挪动

 5.绘制图表 

代码如下:

#绘制图表
plt.show()

 效果如下:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值