Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Matplotlib子图划分——非均匀绘图

Matplotlib子图划分——非均匀绘图

作者头像
python数据可视化之路
发布于 2023-02-23 13:04:50
发布于 2023-02-23 13:04:50
1.5K00
代码可运行
举报
运行总次数:0
代码可运行

本节主要探讨matplotlib子图的非均匀划分,并在文末补充了axes对象的常用属性。

一、均匀子图的划分(参考上一节)

二、非均匀子图划分

分均匀子图的语法均可用于均匀绘图

1)subplot()函数

语法:plt.subplot(nrows, ncols, index, **kwargs),参数解释参考上一节。

现在创建一个画布,有三个子区,子区1,2在第一行,子区3单独在第二行。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 非均匀绘图
import matplotlib.pyplot as plt

fig = plt.figure(figsize = (6, 6)) #设置画布大小为6英寸*6英寸
ax1 = plt.subplot(221) #表示将画布分为22列,索引为1的子区
ax2 = plt.subplot(222) #表示将画布分为22列,索引为2的子区
ax3 = plt.subplot(212) #表示将画布分为21列,索引为2的子区

plt.show()

图1 subplot子图划分

关于ax3 = plt.subplot(212)的理解:因为子区都是在同一个画布上绘制的,每一个plt.subplot()都是指定一个划分规则并选中子区。ax1,ax2表示对画布分为4个均等子区,并且选中了第一个和第二个,剩下的第二行没有被选中。ax3语法则按照新的划分规则(分为2行1列)将画布重新划分,并占用第2行的部分,这一部分恰好是ax1和ax2所空出来的,完成了画布的不均等划分。

2)add_subplot()函数

语法:fig.add_subplot(nrows, ncols, index, **kwargs)

参数解释和subplot()类似。

现在创建一个画布,有三个子区,子区1,2在第一行,子区3单独在第二行。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fig = plt.figure(figsize = (5, 5))

ax1 = fig.add_subplot(221) #表示将画布分为22列,索引为1的子区
ax2 = fig.add_subplot(222) #表示将画布分为22列,索引为2的子区
ax3 = fig.add_subplot(212) #表示将画布分为21列,索引为2的子区

plt.show()

图2 add_subplot子图划分

3)subplot_mosaic()函数

语法:fig, axs = plt.subplot_mosaic(子图别称,layout, figsize) #笔者常用这两个参数。

参数解释参见上一节内容。

现在创建一个画布,有三个子区,子区1,2在第一行,子区3单独在第二行。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fig, ax = plt.subplot_mosaic('''
                                AB
                                CC''', layout = 'constrained', figsize = (6, 6))
ax['A'].set_title('Part A') #设置A子区标题
ax['B'].set_title('Part B')
ax['C'].set_title('Part C')

plt.show()

图3 subplot_mosaic子区划分

以上就是笔者用于不均匀子图划分的常用函数,上述子区都是axes对象,因此可以使用axes的方法属性对绘图区进行调整。

三、axes对象常用的属性

axes.set_xlim():设置x轴范围,axes.set_xlim(-5, 5)

axes.set_xlabel():设置x轴标签,axes.set_xlabel('x轴', font1),使用font1号新建字体样式,具体参考上一节第一个例子。

axes.set_xticks():设置x轴刻度,axes.set_xticks(range(-5, 6, 1),设置x轴刻度为[-5, -4, ..., 4, 5]

axes.get_xticklabels():获取x轴刻度列表。

[label.set_fontsize(size) for label in axes.get_xticklabels] 改变x轴刻度字体大小(配合获取刻度列表使用),同样,坐标轴刻度字体也要配合刻度列表使用。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
x1_label = ax1.get_xticklabels() #获取x轴刻度列表
[label.set_fontsize(15) for label in x1_label] #改变x轴刻度字体大小
[label.set_fontname('Times New Roman') for label in x1_label] #设置坐标轴刻度字体

axes.legend(fontsize = 15):显示图例,并设置字体大小为15。

axes.set_title():设置标题。

更多的设置参考博客:

https://blog.csdn.net/weixin_44237337/article/details/116149154

本节的非均匀绘图到此结束,感谢阅读,下一节将进行统计图形绘制。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 python数据可视化之美 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
matplotlib基础:使用GridSpec自定义子图
指定绘制子图的网格形状,同时要设置绘制子图的行列数。当然也可以调整子图的布局(如 left,right等)。
bugsuse
2020/04/21
4.5K0
matplotlib基础:使用GridSpec自定义子图
深度学习基础之matplotlib,一文搞定各个示例
Matplotlib 是 Python 的绘图库。它可与 NumPy 一起使用 ,Matplotlib也是深度学习的常用绘图库,主要是将训练的成果进行图形化,因为这样更直观,更方便发现训练中的问题,今天来学习下,走起!!
香菜聊游戏
2021/10/19
1.5K0
深度学习基础之matplotlib,一文搞定各个示例
Python气象绘图教程(三)
前面已经讲了很多关于折线图的常用参数,但是像颜色关键词在黑白文献中应该如何修改呢?plot()提供了一个marker=' '参数,其具体变化如下:
气象学家
2020/06/09
3.1K0
Python气象绘图教程(三)
【3】超级详细matplotlib使用教程,手把手教你画图!(多个图、刻度、标签、图例等)
matplotlib的图像都位于Figure对象中,你可以用plt.figure创建一个新的Figure.在subplot上进行绘制
汀丶人工智能
2022/12/21
1.7K0
【3】超级详细matplotlib使用教程,手把手教你画图!(多个图、刻度、标签、图例等)
孔乙己:你可知subplot有几种写法?
话说,这篇文章我本来想起个名字叫《如何用Python画子图》,然后我看了一眼公众号后台:
bugsuse
2021/01/04
2K0
孔乙己:你可知subplot有几种写法?
Python数据分析之matplotlib(基础篇)
在matplotlib中,整个图像为一个Figure对象。在Figure对象中可以包含一个,或者多个Axes对象。每个Axes对象都是一个拥有自己坐标系统的绘图区域。其逻辑关系如下:
AI异构
2020/07/29
4420
Python数据分析之matplotlib(基础篇)
【Python进阶】带你使用Matplotlib进行可视化
欢迎来到专栏《Python进阶》。在这个专栏中,我们会讲述Python的各种进阶操作,包括Python对文件、数据的处理,Python各种好用的库如NumPy、Scipy、Matplotlib、Pandas的使用等等。我们的初心就是带大家更好的掌握Python这门语言,让它能为我所用。
用户1508658
2019/08/06
1.3K0
Matplotlib 中文用户指南 3.5 密致布局指南
tight_layout会自动调整子图参数,使之填充整个图像区域。这是个实验特性,可能在一些情况下不工作。它仅仅检查坐标轴标签、刻度标签以及标题的部分。
ApacheCN_飞龙
2022/12/01
6540
Matplotlib 中文用户指南 3.5 密致布局指南
我的机器学习matplotlib篇导入画出第一个图形颜色,标记,线型刻度、标题、标签和图例!创建子图
前言: matplotlib是python最常用的绘图库,能帮你画出美丽的各种图 导入 包含了中文显示,屏外显示 import matplotlib.pyplot as plt import matplotlib as mpl import numpy as np %matplotlib tk #解决中文不显示问题 mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = False 画出第
DC童生
2018/04/27
1.5K0
我的机器学习matplotlib篇导入画出第一个图形颜色,标记,线型刻度、标题、标签和图例!创建子图
Python数据可视化——matplotlib使用
总第57篇 01|Figure和Subplot: matplotlib的图像都位于figure对象中,相当于一块画布。figure的属性figsize是用来设置figure的大小的。subplot是用来存放坐标系的,一个figure中可以有多个subplot。 %matplotlib inline import matplotlib.pyplot as plt from numpy.random import randn import numpy as np fig=plt.figure() ax1=f
张俊红
2018/04/11
1.7K0
Python数据可视化——matplotlib使用
【转载】matplotlib.pyplot的使用总结大全(入门加进阶)
其实一年前就有想法好好学学python里的画图库matplotlib库,主要是因为每次可视化一些结果的时候,都是搜一些别人写好的代码,看的时候感觉乱乱的,不是说别人写的乱,而是每个人在某些点上实现的方式不太一样,还有就是觉得,总用别人的,就觉得不是自己创造的,没有成就感。这段时间做了个比赛,可视化分析的时候,又在搜代码,想自己加点东西,感觉很费劲,又不知道该怎么加,所以决定好好学一下,并做好总结。
marsggbo
2021/08/12
2.2K0
[机器学习实战札记] matplotlib绘图基础
在机器学习中,通常会涉及到大量的数据。如果直接观看这些原始数据,很难从中看出有用的信息。人类是非常视觉的生物,当我们看到可视化的东西时,会更好地理解事物。在python中,有一个强大的工具matplotlib来帮助我们,用图形化的方式来展现数据。在《机器学习实战》一书中,就多处使用了matplotlib来绘制图形,帮助我们理解数据和学习算法。
云水木石
2019/07/01
1.2K0
[机器学习实战札记] matplotlib绘图基础
50题matplotlib从入门到精通
Matplotlib 是 Python 的绘图库。它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案,也可以和图形工具包一起使用。和Pandas、Numpy并成为数据分析三兄弟(我自己想的)。
派大星的数据屋
2022/04/02
1.5K0
50题matplotlib从入门到精通
Matplotlib数据可视化:三大容器对象与常用设置
上一篇说到,matplotlib中所有画图元素(artist)分为两类:基本型和容器型。容器型元素包括三种:figure、axes、axis。一次画图的必经流程就是先创建好figure实例,接着由figure去创建一个或者多个axes,然后通过axes实例调用各种方法来添加各种基本型元素,最后通过axes实例本身的各种方法亦或者通过axes获取axis实例实现对各种元素的细节操控。 本篇博客继续上一节的内容,展开介绍三大容器元素创建即通过三大容器可以完成的常用设置。
统计学家
2020/05/16
1K0
Python数据可视化-第5章-子图的绘制及坐标轴共享
使用pyplot模块的subplot()函数可以在规划好的某个区域中绘制单个子图。
用户2225445
2025/04/01
2530
Python数据可视化-第5章-子图的绘制及坐标轴共享
python绘图与数据可视化(二)
上一次是于老师要求我做一次备课,讲一节课,上周于老师又自己准备了这个课程,这里放一下于老师课上补充的知识点
十二惊惶
2024/02/28
3510
python绘图与数据可视化(二)
精品教学案例 | 利用Matplotlib和Seaborn对苹果股票价格进行可视化分析
本案例适合作为大数据专业数据可视化课程的配套教学案例。通过本案例,能够达到以下教学效果:
数据酷客
2020/05/09
3K0
精品教学案例 | 利用Matplotlib和Seaborn对苹果股票价格进行可视化分析
Matplotlib从入门到精通03-布局格式定方圆
参考: https://datawhalechina.github.io/fantastic-matplotlib/%E7%AC%AC%E4%B8%80%E5%9B%9E%EF%BC%9AMatplotlib%E5%88%9D%E7%9B%B8%E8%AF%86/index.html
用户2225445
2023/10/16
2900
Matplotlib从入门到精通03-布局格式定方圆
python数据可视化系列教程——matplotlib绘图全解
matplotlib是受MATLAB的启发构建的。MATLAB是数据绘图领域广泛使用的语言和工具。MATLAB语言是面向过程的。利用函数的调用,MATLAB中可以轻松的利用一行命令来绘制直线,然后再用一系列的函数调整结果。
全栈程序员站长
2022/07/02
3.2K0
python数据可视化系列教程——matplotlib绘图全解
【Python】 【绘图】plt.figure()的使用
figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True)
全栈程序员站长
2022/09/07
1.3K0
推荐阅读
相关推荐
matplotlib基础:使用GridSpec自定义子图
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验