首页编程开发Matplotlib【数据可视化(Matplo...

【数据可视化(Matplotlib篇)】22.子图布局函数add_axes()

本系列文章配套代码获取有以下两种途径:

  • 通过百度网盘获取:
链接:https://pan.baidu.com/s/1jG-rGG4QMuZu0t0kEEl7SA?pwd=mnsj 提取码:mnsj
  • 前往GitHub获取
https://github.com/returu/Data_Visualization





add_axes()函数能够将生成的axes轴域对象添加到画布中从而达到自定义子图布局的目的。
01

函数语法


add_axes()函数语法如下所示:
add_axes(rect, projection=None, polar=False, **kwargs)
主要参数的意义如下:
  • rect是位置参数,决定了axes轴域对象的位置,接受一个由4个元素组成的浮点数列表[left, bottom, width, height]表示添加到画布中的矩形区域的左下角坐标(x,y),以及宽度和高度。每个元素的值是画布宽度和高度的分数。即将画布的宽、高作为 1 个单位。比如,[ 0.1, 0.1, 0.8, 0.8],它代表着从画布 10% 的位置开始绘制, 宽高是画布的 80%。
  • projection轴的投影类型;
  • sharex, sharey:是否共享x或y轴;
  • label轴的标签。
通过以下三个实例,可以看出使用add_axes()函数生成子图的灵活性更强,且更容易控制子图的显示位置。
02

子图配置实例


  • 实例1——等分的子图布局样式:
代码如下所示:
#创建一个画布
fig = plt.figure(facecolor="0.8")  # gray background

#ax1-4 起始位置不同,宽高是画布的30%
ax1 = fig.add_axes([0.1, 0.6, 0.3, 0.3]) 
ax2 = fig.add_axes([0.6, 0.6, 0.3, 0.3]) 
ax3 = fig.add_axes([0.1, 0.1, 0.3, 0.3]) 
ax4 = fig.add_axes([0.6, 0.1, 0.3, 0.3]) 

plt.show()
可视化效果如下图所示:


  • 实例2——非等分的子图布局样式:
代码如下所示:
#创建一个画布
fig = plt.figure(facecolor="0.8")  # gray background

#ax1-4 起始位置不同,宽高也不同
ax1 = fig.add_axes([0.1, 0.6, 0.3, 0.3]) 
ax2 = fig.add_axes([0.6, 0.6, 0.3, 0.3]) 
ax3 = fig.add_axes([0.1, 0.1, 0.6, 0.3]) 
ax4 = fig.add_axes([0.8, 0.1, 0.1, 0.3]) 

plt.show()
可视化效果如下图所示:

  • 实例3——图中图的布局样式:

代码如下所示:

#创建一个画布
fig = plt.figure(facecolor="0.8")  # gray背景

#ax1 从画布10%的位置开始绘制,宽高是画布的30%
ax1 = fig.add_axes([0.1, 0.1, 0.8, 0.8],facecolor="moccasin")   # CSS色彩模式

ax2 = fig.add_axes([0.2, 0.5, 0.3, 0.3]) 

plt.show()

可视化效果如下图所示:


更多内容可以前往官网查看

https://matplotlib.org/stable/


本篇文章来源于微信公众号: 码农设计师

RELATED ARTICLES

欢迎留下您的宝贵建议

Please enter your comment!
Please enter your name here

- Advertisment -

Most Popular

Recent Comments