目录

前言

前面我们已经知道,一个figure可以画一张画布,今天我们讲的是在同一个figure里画多张子图,我们要用的是subplot与subplot2grid()方法来绘制子图。

(一)subplot()方法

1.语法说明

subplot是均匀的分割绘图区,来进行子图的放置。

  1. 需要注意的是subplot并不适合来绘制跨行或者跨列的子图,跨行与跨列的子图绘制,交给subplot2grid()更容易完成。
  2. 如果分割的图只是个位数时,那么原本的表示方法:(2,2,1),与(221)等效,其他的不可如此。

2.源代码

# 导入模块
import matplotlib.pyplot as plt
import numpy as np # 数据
x = np.linspace(-10, 10, 100)
y1 = x
y2 = x**2
y3 = x**3 # 创建一个figure窗体
fig = plt.figure(num="子图得比较")
fig.suptitle("draw some subplot") # 绘制第一个子图
ax1 = plt.subplot(2, 2, 1)
plt.plot(x, y1)
ax1.set_title("y1 = x") # 绘制第二个子图
ax2 = plt.subplot(222)
plt.plot(x, y2)
ax2.set_title("y2=x**2") # 绘制第三个子图
ax3 = plt.subplot(223)
plt.plot(x, y3)
ax3.set_title("y3=x**3") # 展示
plt.show()

3.输出效果

(二)subplot2grid方法

1.语法说明

subplot2grid((分割),(起始位置),colspan=列宽, rowspan=行宽)

例如:plt.subplot2grid((3, 3), (1, 0), colspan=2, rowspan=1),

将整块figure画布分成3行3列的格子,从第2行,第一列画起该子图,列宽占两格,行宽占一格。

像figure一样,定义subplot2grid()子图以后,后续的操作都在该子图上,直到另一个子图的出现。

2.源代码

import matplotlib.pyplot as plt

# 创建画布
plt.figure()
# 创建子图
ax1 = plt.subplot2grid((3, 3), (0, 0), colspan=3, rowspan=1)
ax1.plot([1, 2], [1, 2])
ax1.set_title("No1")
ax2 = plt.subplot2grid((3, 3), (1, 0), colspan=2, rowspan=1)
ax3 = plt.subplot2grid((3, 3), (1, 2), colspan=2, rowspan=2)
ax4 = plt.subplot2grid((3, 3), (2, 0), colspan=1, rowspan=1)
ax5 = plt.subplot2grid((3, 3), (2, 1), colspan=1, rowspan=1) plt.show()

3.展示效果

作者:Mark

日期:2019/02/01 周五

4.9Python数据处理篇之Matplotlib系列(九)---子图分布的更多相关文章

  1. 4.14Python数据处理篇之Matplotlib系列(十四)---动态图的绘制

    目录 目录 前言 (一)需求分析 (二)随机数的动态图 1.思路分析: 2.源代码: 2.输出效果: 目录 前言 学习matplotlib已经到了尾声,没有必要再继续深究下去了,现今只是学了一些基础的 ...

  2. 4.13Python数据处理篇之Matplotlib系列(十三)---轴的设置

    目录 目录 前言 (一)设置轴的范围 1.同时对于x,y轴设置 2.分别对与x,y轴的设置 (二)设置刻度的大小 1.普通的刻度设置 2.添加文本的刻度设置 3.主副刻度的设置 (三)设置轴的数据 1 ...

  3. 4.12Python数据处理篇之Matplotlib系列(十二)---绘图风格的介绍

    目录 目录 前言 (一)不同风格 1.说明: 2.使用: 3.代码使用: (二)例子演示 1.dark_background 2.bmh 3.fivethirtyeight 4.ggplot 5.gr ...

  4. 4.11Python数据处理篇之Matplotlib系列(十一)---图例,网格,背景的设置

    目录 目录 前言 (一)图例legend 1.默认不带参数的图例 2.添加参数的图例 3.将图例移动到框外 (二)网格grid 1.说明 2.源代码: 3.输出效果 (三)背景axses 1.设置全局 ...

  5. 4.10Python数据处理篇之Matplotlib系列(十)---文本的显示

    目录 目录 前言 (一)中文显示 ==1.全局的设置== ==2.局部的设置== (二)文本显示 目录 前言 今天我们来学习一下文本的显示 (一)中文显示 ==1.全局的设置== (1)说明: 在ma ...

  6. 4.8Python数据处理篇之Matplotlib系列(八)---Figure的学习

    目录 目录 前言 (一)figure()方法的定义 (二)figure()方法的参数 (三)figure()方法的例子 1.多窗体绘图: 2.窗口得分别率 目录 前言 今天我们来学习一下plt.fig ...

  7. 4.7Python数据处理篇之Matplotlib系列(七)---matplotlib原理分析

    目录 目录 前言 (一)总框架分析 (二)函数式的绘图 1.说明: 2.函数绘图的缺优点 3.绘图类的函数 4.操作类的函数 5.例子: (三)面向对象式的绘图 1.基本概念 2.基本对象 3.面向对 ...

  8. 4.6Python数据处理篇之Matplotlib系列(六)---plt.hist()与plt.hist2d()直方图

    目录 目录 前言 (一)直方图 (二)双直方图 目录 前言 今天我们学习的是直方图,导入的函数是: plt.hist(x=x, bins=10) 与plt.hist2D(x=x, y=y) (一)直方 ...

  9. 4.5Python数据处理篇之Matplotlib系列(五)---plt.pie()饼状图

    目录 目录 前言 (一)简单的饼状图 (二)添加阴影和突出部分 (三)显示图例和数据标签: 目录 前言 饼状图需要导入的是: plt.pie(x, labels= ) (一)简单的饼状图 (1)说明: ...

随机推荐

  1. UVC 驱动调用过程与驱动框架的简单分析

    内核:Linux-3.4.2 驱动:drivers\media\video\uvc\uvc_driver.c UVC 驱动整体调用流程: /* 打开设备描述符 */ 1. open: uvc_v4l2 ...

  2. lambda,linq

    一:什么是Lambda表达式 lambda表达式是实例化委托的一个参数,就是一个方法,具体实现如下: { //.NetFramework 1.0-1.1的时候这样应用 NoReturnNoPara m ...

  3. WPF 水平进度条

    WPF设计界面过程中,有时需要设计一种可以手动滑动修改并实时显示的进度条 进度条,效果如下: 颜色.图标.节点什么的,都可以重新替换. 前端XAML代码: <UserControl x:Clas ...

  4. oracle表空间大小的限制和DB_BLOCK_SIZE的概念

    之前接触的项目表空间最大也不超过10G,所以导入数据库时一直使用导入本地的oracle数据库文件的方法,即根据dmp文件大小设置一个数据文件,设定表空间最大值. --创建表空间,数据文件为'F:\ap ...

  5. [android] 采用post的方式提交数据

    GET:内部实现是组拼Url的方式,http协议规定最大长度4kb,ie浏览器限制1kb POST和GET的区别比较了一下,多了几条信息 Content-Type:application/x-www- ...

  6. GitHub:我们是这样弃用jQuery的

    摘要: 技术债清理流程指南. 原文:Removing jQuery from GitHub.com frontend 译文:GitHub:我们为什么会弃用jQuery? 作者:GitHub 前端工程团 ...

  7. angular url 传参

    1.路由里配置参数operation 2.页面A跳转时带上参数 $scope.goPage = function (op) { $state.go("app.productConfigadd ...

  8. Echarts纵坐标显示为整数小数

    chart.DoubleDeckBarChart = function (getIDParam, Legend, xAxisData, seriesName1, seriesName2, series ...

  9. 【效率工具】史上最好用的SSH一键登录脚本,第三版更新!

    说明 时隔一周,GotoSSH又迎来了一次重大更新,让这个史诗级的shell工具变得更加丝般顺滑了~ 这次的主要更新是对自定义全局命令以及自定义属性的支持,让设置更加灵活,此外,对各个细节进行了调整, ...

  10. VS调试IDAPython脚本

    本文最后修改时间:20180213 1.安装VS插件PTVS , 这一步与第2步中安装版本应该一致,否则最后调试时会连不上 https://github.com/Microsoft/PTVS/ 2.安 ...