python matplotlib.subplot绘制子图

2023-05-16

版权声明:本文为博主原创文章 && 转载请著名出处 @ http://blog.csdn.net/gatieme

目录(?)[+]

  1. 问题描述
  2. subplot函数介绍
  3. 示例程序
    1. 1 规则划分成33的
    2. 2 不规则划分
CSDNGitHub
python使用matplotlib:subplot绘制多个子图AderXCoding/language/python/matplotlib/subplot


知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处

1 问题描述


matploglib 能够绘制出精美的图表, 有些时候, 我们希望把一组图放在一起进行比较, 有没有什么好的方法呢?

matplotlib 中提供的 subplot 可以很好的解决这个问题

2 subplot函数介绍


matplotlib下, 一个 Figure 对象可以包含多个子图(Axes), 可以使用 subplot() 快速绘制, 其调用形式如下 :

subplot(numRows, numCols, plotNum)
   
   
  • 1
  • 1
  • 图表的整个绘图区域被分成 numRows 行和 numCols

  • 然后按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域的编号为1

  • plotNum 参数指定创建的 Axes 对象所在的区域

如果 numRows = 2, numCols = 3, 那整个绘制图表样式为 2X3 的图片区域, 用坐标表示为

(1, 1), (1, 2), (1, 3)
(2, 1), (2, 2), (2, 3)
   
   
  • 1
  • 2
  • 1
  • 2

这时, 当 plotNum = 3 时, 表示的坐标为(1, 3), 即第一行第三列的子图

  • 如果 numRows, numColsplotNum 这三个数都小于 10 的话, 可以把它们缩写为一个整数, 例如 subplot(323)subplot(3,2,3) 是相同的.

  • subplotplotNum 指定的区域中创建一个轴对象. 如果新创建的轴和之前创建的轴重叠的话,之前的轴将被删除.

3 示例程序


3.1 规则划分成3*3的


#!/usr/bin/env python
#!encoding=utf-8

import matplotlib
import matplotlib.pyplot as plt

if __name__ == '__main__':
    for i,color in enumerate("rgby"):
        plt.subplot(221+i, axisbg=color)

    plt.show()
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

figure_1

3.2 不规则划分


但是有时候我们的划分并不是规则的, 比如如下的形式

figure_2

这种应该怎么划分呢?

将整个表按照 2*2 划分
前两个简单, 分别是 (2, 2, 1)(2, 2, 2)

但是第三个图呢, 他占用了 (2, 2, 3)(2, 2, 4)

显示需要对其重新划分, 按照 2 * 1 划分

前两个图占用了 (2, 1, 1) 的位置

因此第三个图占用了 (2, 1, 2) 的位置

figure_3

代码如下, 参照matplotlib绘制多个子图——subplot

#!/usr/bin/env python
#!encoding=utf-8

import matplotlib.pyplot as plt
import numpy as np



def f(t):
    return np.exp(-t) * np.cos(2 * np.pi * t)

if __name__ == '__main__' :
    t1 = np.arange(0, 5, 0.1)
    t2 = np.arange(0, 5, 0.02)

    plt.figure(12)
    plt.subplot(221)
    plt.plot(t1, f(t1), 'bo', t2, f(t2), 'r--')

    plt.subplot(222)
    plt.plot(t2, np.cos(2 * np.pi * t2), 'r--')

    plt.subplot(212)
    plt.plot([1, 2, 3, 4], [1, 4, 9, 16])

    plt.show()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python matplotlib.subplot绘制子图 的相关文章

  • expect spawn、linux expect 用法

    使用expect实现自动登录的脚本 xff0c 网上有很多 xff0c 可是都没有一个明白的说明 xff0c 初学者一般都是照抄 收藏 可是为什么要这么写却不知其然 本文用一个最短的例子说明脚本的原理 脚本代码如下 xff1a usr bi
  • python 调用 shell python shell 间变量传递

    python gt shell xff1a 1 环境变量 python view plain copy print import os var 61 123 或var 61 123 os environ var 61 str var env
  • vSphere,ESXi和vCenter 的区别

    最近在看 VMware 一直没有搞清楚这几个产品之间的区别和联系 正好在网上搜索到一个好文 xff0c 翻译下来 本文翻译自 xff1a http www mustbegeek com difference between vsphere
  • equals和hashCode详解

    在学习的过程中 xff0c 特别是学习集合的时候 xff0c equals和hashCode一直是经常出现的方法 xff0c 而且在面试题中 xff0c 也经常出现equals和 61 61 的区别等问题 xff0c 现在我们就从底层详细的
  • NuttX的应用记录 4 (小记录)

    好久没看过NuttX了 xff0c 做个移植试一试 板子是STM32F407ZE xff0c 有两块屏幕 xff0c 蜂鸣器 xff0c FLASH xff0c E2PROM xff0c LED 先找个类似的 xff0c 复制一个副本 st
  • PetaLinux学习笔记 3

    过年回家没带开发板 终于可以搞一搞了 更新petaLinux到2019 2 重建项目 xff0c flash调整一下 启动过程中提示 xff1a m25p80 spi0 0 found w25q256 expected n25q512a m
  • 高云GW1N-9的SerDes笔记

    GW1NR 9的片子 xff1a 看起来还是很强的 xff0c 但是在工程中使用后会这样提示 xff1a 看起来有点虚标啊 那就按1G来先 xff0c 做个后仿 直接用OSER来输出数据 看起来还可以 输出可以 在做一个输入 xff0c 根
  • NuttX的学习笔记 1

    学习这个系统 xff0c 开始是在PIX的飞控上了解到的 xff0c 感觉这个系统很有兴趣 xff0c 当然 xff0c 这是我第一次接触RTOS xff0c 有不正确的地方 xff0c 请予以指正 注意 过程是我边操作边写的 xff0c
  • NuttX的学习笔记 2

    README文档目录的第二部分 Configuring NuttX Instantiating Canned ConfigurationsRefreshing ConfigurationsNuttX Configuration ToolFi
  • LSM303DLHC

    xff08 PS xff1a 最近在帮人做一个电子罗盘 xff0c 刚好STM32F429i DISCO上有个MEMS xff0c 但是我自己没有看到底是个什么传感器 xff0c 搞搞搞了半天 xff0c 读出来三个数据 xff0c 但我移
  • Embedded Wizard 研究笔记 1

    今天突发奇想看看这个Embedded Wizard xff0c 看介绍视频还是很不错的 而且前几天做的罗盘很丑 xff0c 让我深刻意识到了UI的必要性 xff0c 那么这个Embedded Wizard就是为此而生 刚好我手上还有一块ST
  • STM32 & Clion

    注 xff1a 这个方法已经不适用于最新版本的的Clion了 xff08 最近通过Android认识了Jetbrain公司 xff0c 从此彻底迷上了这个公司的产品 xff0c Unity上用Rider xff0c Java上用IDEA x
  • NuttX的移植笔记 2

    好了 xff0c 继续 5 B L475E IOT01A clocking h 这个文件基本和configs stm32l476vg disco include stm32l476vg disco clocking h差不多 不如说就是一模
  • TortoiseGit的介绍和使用

    Git是什么 xff0c 相信大家都很清楚 Git不就是分布式版本控制系统嘛 xff1f 那你知道TortoiseGit是什么吗 xff1f 下面我们就介绍一下TortoiseGit它是什么 xff1f 如何使用 xff1f Tortois
  • CentOS7查看和关闭防火墙

    CentOS 7 0默认使用的是firewall作为防火墙 查看防火墙状态 firewall cmd state 停止firewall systemctl stop firewalld service 禁止firewall开机启动 syst
  • maven问题:org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException

    原因 xff1a 因为maven中集成的tomcat插件的版本与创建项目的jdk版本有冲突 xff0c 比如运行时使用的tomcat6而jdk是1 8 xff0c 而tomcat6是不支持该jdk的 解决 xff1a 1 在该工程中的pom
  • nginx反向代理后,重定向失败问题

    nginx在做反向代理到后端服务器 xff0c 如果后端服务器有重定向 xff0c 会出现返回服务器的ip地址 xff0c 解决办法 xff1a server listen 80 server name www boke com locat
  • 虚拟机扩容——LVM分区

    虚拟机扩容 LVM分区 前提说明实验环境一 准备工作二 查看磁盘扩容后状态三 对指定磁盘进行初始化操作四 创建物理卷1 刷新分区并创建物理卷2 查看物理卷信息 五 卷组 逻辑卷的操作 xff08 加载到已有路径 xff09 1 查看卷组名称
  • ssh 免密登录

    Linux生成密钥和公钥 先查看有没有路径 ssh 如果有证明以前生成过了 xff0c 如果没有就需要重新生成 1 输入如下命令 xff1a ssh keygen t rsa 或者添加邮箱 ssh keygen t rsa C 34 你的邮
  • 深度学习模型训练调参的tricks总结

    目录 一 调参tricks总结分析 1 数据与标签角度 1 1 数据归一化 1 2 数据增强 1 3 标签平滑 xff08 Label Smoothing xff09 2 权重初始化 xff08 Weight Initialization

随机推荐

  • 归一化 (Normalization)、标准化 (Standardization)和中心/零均值化 (Zero-centered)

    目录 一 概念 1 归一化 xff08 Normalization xff09 xff1a 2 标准化 xff08 Standardization xff09 xff1a 3 中心化 零均值化 xff08 zero centered xff
  • CSDN高校俱乐部牵手烟台大学

    4月8日19 xff1a 00 xff0c 烟台大学CSDN高校俱乐部成立仪式暨 amp ldquo 激情与梦想 xff0c 我的程序员之路 amp rdquo amp mdash amp mdash 2011CSDN高校巡回演讲在烟台大学
  • 技术网站http://www.github.com/

    http www runoob com w3cnote android tutorial eclipse adt sdk app html 菜鸟教程 http www jsoneditoronline org JSON解析 http dev
  • FastRTPS-安装手顺

    1 基本要求 1 1 Boost 库和头文件 eProsima Fast RTPS 需要 Boost 发行版 xff0c 因此用户必须安装 1 57 版 按照 boost 发行版中包含的说明进行安装 Windows 安装程序已经为必要的 b
  • openflow13softwareswitch安装及使用笔记

    openflow协议代码的大体结构如下 xff1a 1 涉及报文传输与生成的main函数 2 udatapath c负责datapath xff08 OpenFlow网络中 xff0c 每个OpenFlow实例都使用唯一的Datapath
  • 栈的作用

    栈的作用 计算机里面的栈其实有着举足轻重的作用 大学刚学c语言的时候 xff0c 教的是堆栈 xff0c 传达的是一种后入先出的算法思想 但其实我们知道 xff0c 堆和栈是两个截然不同的东西 而这里面说到的栈 xff0c 则是更融入到计算
  • 多旋翼原理与控制

    多旋翼原理与控制 发表于 2016 11 03 分类于 飞行机器人 本文主要总结了多旋翼飞行器的工作原理 xff0c 包括升降 测飞 转向灯 首先通过四旋翼给出一个直观的解释 然后提取多旋翼飞行器 xff08 包括不同形状 xff09 的共
  • Linux网络编程

    OSI七层结构模型 xff1a 物理层 在OSI参考模型中 xff0c 物理层 xff08 Physical Layer xff09 是参考模型的最低层 xff0c 也是OSI模型的第一层 物理层的主要功能是 xff1a 利用传输介质为数据
  • NVIDIA英伟达jetson xavier nx怎么进入Recovery模式

    xavier nx开发板上没有RECOVERY 按键 xff0c 如何进入Recovery模式呢 xff1f 以下是进入Recovery模式的步骤 xff1a 1 关闭系统电源 xff0c 请确保使电源关闭而不是进入待机状态 xff1b 2
  • Qt获得焦点和失去焦点处理事件 (Focus事件)

    方法一 xff1a 描述 xff1a 一开始我要实现的目的就是 xff0c 在一个窗体上有多个可编辑控件 xff08 比如QLineEdit QTextEdit等 xff09 xff0c 当哪个控件获得焦点 xff0c 哪个控件的背景就高亮
  • linux cifs自动挂载windows硬盘或文件夹

    1 在要挂载的windows系统中找到需要挂载的硬盘或者文件夹 xff0c 把它设置为共享 例如 xff1a 在D盘下建立文件夹shared xff0c 设为共享 2 在linux系统 mnt目录下创建一个文件夹 mkdir mnt wor
  • RFID基础

    射频基础 1 射频 xff1a 射频 xff08 Radio Frequency xff0c RF xff09 是一种高频交流变化电磁波 xff0c 通常所指的频率范围为100 kHz xff5e 30 GHz 我们把具有远距离传输能力的高
  • Sed命令把TAB键替换成空格

    sed 39 s t g 39 filename
  • MIC电路原理

    一 MIC 的电路原理 FET xff1a 场效应管 MIC 的主要器件 xff0c 起到阻抗变换和放大的作用 C xff1a 是一个可以通过膜片震动而改变电容量的电容 xff0c 声电转换的主要部件 C1 C2 xff1a 是为了防止射频
  • SecureCRT crt.Screen.WaitForString用法

    在SecureCRT里 xff0c 用得最多的应该就是crt Screen xff0c 基本上很多操作都是基于屏幕的返回字来决定下一步的操作 这里脚本语言使用VBScript 进行讲解 61 61 61 61 61 61 61 61 61
  • debian9.13系统安装libreoffice6.4.6

    1 在root用户下 apt get remove purge libreoffice 2 切换到下载好的软件包位置 xff0c 然后执行 3 解压Libreoffice安装包和汉化包 tar zxvf LibreOffice 6 4 6
  • tftp和xinetd服务器的配置

    为了开机启动tftpd服务器 需要用到配置xinetd服务器 所以顺便研究下 与xinetd服务器相关的配置就1个文件和1个目录 etc xinetd conf etc xinetd d vim etc xinetd conf defaul
  • c语言 inline函数的总结

    1 inline只是个编译器建议 xff0c 编译器不一定非得展开Inline函数 例如 xff1a Inline函数地址引用 inline在递归函数中使用 2 inline必须用于函数定义 xff0c 对于函数声明 xff0c inlin
  • Linux线程挂掉是否影响进程

    严格的说没有 线程崩溃 xff0c 只是触发了SIGSEGV Segmentation Violation Fault 如果没有设置对应的Signal Handler操作系统就自动终止进程 xff08 或者说默认的Signal Handle
  • python matplotlib.subplot绘制子图

    版权声明 xff1a 本文为博主原创文章 amp amp 转载请著名出处 64 http blog csdn net gatieme 目录 43 问题描述subplot函数介绍示例程序 1 规则划分成33的2 不规则划分 CSDNGitHu