Matplotlib基础(二)—- 图片与子图

Matplotlib基础(二)—- 图片与子图

在平时处理数据的时候,因为数据可视化更能显示数据的关系。而python中的matplotlib库很好地提供了我们2D绘图的方式。于是我打算系统且详细的学习matplotlib,并尽可能地总结各种用法。这个系列就是我我的学习经验总结。

上一篇我介绍了matplotlib库的开始用法: 1. matplotlib库的下载与导入 2. 三层结构的介绍 3. 绘图过程4. 图像的保存。应该都对matplotlib有了一点认识,这一篇,我将总结最常用的创建图片和子图的,以及相关的方法。

在创建目的图表之前,推荐两个Numpy库里的两个常用函数 arange()linspace()
1. arange(start, end, steps)
start,end为两个端点值,steps为步长值
2. linspace(start, end, nums)
start, end为两个端点值, nums为点数(切出几个距离相同的点)

创建图片

创建图片之前,应用到上一篇学到的,需先创建画布和坐标系,再plot出目标图像。
利用plot(x, y),传入必须的参数值x, y。(x和y必须为相同维度的数据,否则图像无法绘制出来)
实例如下:

import matplotlib.pyplot as plt

x = [0, 1, 2, 3, 4]
y = [5, 6, 7, 8, 9]
fig = plt.figure(dpi=100)
ax = plt.subplot(111)
ax.plot(x, y)
plt.show()

Matplotlib基础(二)---- 图片与子图

可以看出,当x, y是一定数量的数组时,matplotlib会数据点连成一条线。

同一坐标系中添加图像
如果需要在同一个坐标系中,绘制多个目标图像,可以使用多次 plot()或者类似的函数。

import matplotlib.pyplot as plt

x = [0, 1, 2, 3, 4]
y1 = [5, 6, 7, 8, 9]
y2 = [0, 1, 2, 3, 4]
fig = plt.figure(dpi=100)
ax = plt.subplot(111)
ax.plot(x, y1)
ax.plot(x, y2)
plt.show()

图像如下:

Matplotlib基础(二)---- 图片与子图

创建子图

在一个画布中,可以用 add_subplot()创建一个或多个子图(subplot),也就是创建多个坐标系。

fig = plt.figure()
ax1 = fig.add_subplot(2, 2, 1)
ax2 = fig.add_subplot(2, 2, 2)
ax3 = fig.add_subplot(2, 2, 3)
plt.show()

Matplotlib基础(二)---- 图片与子图
更为简洁的方式如下:
fig, axes = plt.subplots(nrows=2, ncols=2)
axes[0, 0].set(title='upperleft')
axes[0, 1].set(title='upperright')
axes[1, 0].set(title='lowerleft')
axes[1, 1].set(title='lowerright')
plt.show()

Matplotlib基础(二)---- 图片与子图
分别在坐标系上画图
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, np.pi, 0.01)
fig, axes = plt.subplots(nrows=2, ncols=2)
axes[0, 0].set(title='upperleft')
axes[0, 1].set(title='upperright')
axes[1, 0].set(title='lowerleft')
axes[1, 1].set(title='lowerright')
axes[0, 0].plot(x, 2*x)
axes[0, 1].plot(x, x**2)
axes[1, 1].plot(x, np.sin(x))
plt.show()

输出图片如下:

Matplotlib基础(二)---- 图片与子图
pyplot.subplots选项

参数描述nrows子图的行数ncols子图的列数sharex所有子图使用相同的x轴刻度(调整xlim会影响所有子图)sharey所有子图使用相同的y轴刻度(调整ylim会影响所有子图)subplot_kw传入add_subplot的关键字参数字典,用于生成子图**fig_kw在生成图片时使用的额外关键字参数,例如plt.subplots(2, 2, figsize=(8, 6))

总结:

  1. 了解创建图片和子图
  2. 了解如何一个坐标系创建多个图例
  3. 了解创建多个坐标系并作图

Original: https://blog.csdn.net/weixin_56960596/article/details/123933668
Author: June_Pyt
Title: Matplotlib基础(二)—- 图片与子图

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/766637/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Python实现阶跃函数、sigmoid函数、ReLU函数

    Python实现阶跃函数、sigmoid函数、ReLU函数 神经网络 阶跃函数实现 sigmoid函数的实现 ReLU函数的实现 神经网络 神经网络有三层,左边的为输入层,中间的是…

    Python 2023年8月28日
    094
  • 动手学数据分析 01

    课程现分为三个单元,大致可以分为:数据基础操作,数据清洗与重构,建模和评估。 1 第一章:数据载入及初步观察 第一部分:我们获得一个要分析的数据,我要学会如何加载数据,查看数据,然…

    Python 2023年8月28日
    057
  • Anaconda配置环境与Pycharm配合使用

    首先需要知道为什么要用Anaconda配置环境,因为当你在base环境下安装较多库时,容易导致有一些安装包冲突,所以我们需要用Anaconda配置环境,需要哪些库,就在该环境下安装…

    Python 2023年8月1日
    063
  • 二阶段目标检测网络-Mask RCNN 详解

    ROI Pooling 和 ROI Align 的区别 Mask R-CNN 网络结构 骨干网络 FPN anchor 锚框生成规则 实验 参考资料 Mask RCNN 是作者 K…

    Python 2023年10月12日
    046
  • python中的decorator装饰器(上)

    在理解装饰器的概念前,我们首先看一下function和inner function在python中的含义。 function与inner function function:在py…

    Python 2023年11月2日
    049
  • python制作音乐播放器_python实现音乐播放器 python实现花框音乐盒子

    本文实例为大家分享了python实现音乐播放器的具体代码,供大家参考,具体内容如下 “””这是一个用海龟画图模块和pygame的混音模块制作的简…

    Python 2023年9月23日
    025
  • PYTHON的一维转二维

    需求 实践中,很多数据是一维的,比如按客户编号构建的一张分地区、分阶段违约次数表。一维数组:现在需要将其转换为二维矩阵,各地区、各阶段的客户违约次数之和。既做了一维转二维的工作,也…

    Python 2023年8月16日
    072
  • python 热图颜色_Python可视化matplotlib&seborn14-热图heatmap

    热力图(heatmap)可通过颜色深浅变化,优雅的展示数据的差异。 详细介绍python seaborn绘制热图 本文速览Matplotlib热图heatmapseaborn热图1…

    Python 2023年9月4日
    047
  • Python图像处理丨图像的灰度线性变换

    摘要:本文主要讲解灰度线性变换。 一.图像灰度线性变换原理 图像的灰度线性变换是通过建立灰度映射来调整原始图像的灰度,从而改善图像的质量,凸显图像的细节,提高图像的对比度。灰度线性…

    Python 2023年11月1日
    047
  • 【docker的那些事】docker-compose、scale扩容缩容

    前言 Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。使用 Compose,您可以使用 YAML 文件来配置应用程序的服务。然后,使用单个命令,从配置创建…

    Python 2023年8月12日
    069
  • 质量问题不是不爆,时候未到

    没有质量,哪来效率,谈什么成本; 最近大半年,团队以极其曲折的方式,将一个支离破碎的应用从重构的边缘给拉了回来,最终项目回到了正常迭代的节奏中; 年初的时候,运营系统相关人员离职,…

    Python 2023年10月22日
    039
  • Python3获取5000个元素的单字符表

    此前考虑过一个问题,有没有办法获取到python里面所有定义好的单字符的表,比如我们获取5000个不一样的单字符,但是常用的 chr(number)的方法里面包含了太多的非字母条目…

    Python 2023年11月2日
    035
  • 30个Python小游戏,上班摸鱼我能玩一天【内附源码】

    大家好,我是辣条。 今天给大家带来30个py小游戏,一定要收藏! 目录 有手就行 1、吃金币 2、打乒乓 3、滑雪 4、并夕夕版飞机大战 5、打地鼠 简简单单 6、小恐龙 7、消消…

    Python 2023年11月6日
    059
  • Python_爬虫数据存入数据库(超详细过程

    目录 一、新建项目 二、程序的编写 三、数据的爬取 一、新建项目 1.在cmd窗口输入scrapy startproject [项目名称] 创建爬虫项目 接着创建爬虫文件,scra…

    Python 2023年8月1日
    058
  • 1分钟理清楚C++类模板和模板类区别

    1、定义区别 类模板和模板类主要关注点是后一个单词。 类模板:主要描述的是模板,这个模板是类的模板。可以理解为一个通用的类,这个类中的数据成员,成员函数的形参类型以及成员函数的返回…

    Python 2023年10月13日
    039
  • 【2022蓝帽杯】file_session && 浅入opcode

    1NDEX 0x00 前言 0x01 brain.md * – + flask session机制 python pickle 关于map的浅入 * localtest…

    Python 2023年8月9日
    065
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球