当前位置: 首页 > news >正文

【深度学习】 Python 和 NumPy 系列教程(廿五):Matplotlib详解:3、多子图和布局:subplot()函数

目录

一、前言

二、实验环境

三、Matplotlib详解

1、2d绘图类型

2、3d绘图类型

3、多子图和布局

1. subplot()函数

简单示例


一、前言

        Python是一种高级编程语言,由Guido van Rossum于1991年创建。它以简洁、易读的语法而闻名,并且具有强大的功能和广泛的应用领域。Python具有丰富的标准库和第三方库,可以用于开发各种类型的应用程序,包括Web开发、数据分析、人工智能、科学计算、自动化脚本等。

        Python本身是一种伟大的通用编程语言,在一些流行的库(numpy,scipy,matplotlib)的帮助下,成为了科学计算的强大环境。本系列将介绍Python编程语言和使用Python进行科学计算的方法,主要包含以下内容:

  • Python:基本数据类型、容器(列表、元组、集合、字典)、函数、类
  • Numpy:数组创建、数组操作、数组数学、广播
  • Matplotlib:2d绘图、3d绘图、图表自定义、多子图和布局、图表自定义、多子图和布局
  • IPython:创建笔记本、典型工作流程

二、实验环境

matplotlib3.5.3
numpy1.21.6
python3.7.16
  • 运行下述命令检查Python版本
 python --version 
  • 运行下述代码检查Python、NumPy、Matplotlib版本
import sys
import numpy as np
import matplotlibprint("Python 版本:", sys.version)
print("NumPy 版本:", np.__version__)
print("matplotlib 版本:", matplotlib.__version__)

三、Matplotlib详解

        Matplotlib是一个用于创建数据可视化的Python库。它提供了广泛的绘图选项,能够生成各种类型的图表、图形和可视化效果。下面是Matplotlib的一些主要功能:

  1. 绘图风格和类型:Matplotlib支持各种绘图风格和类型,包括线图、散点图、柱状图、饼图、等高线图、3D图等,可以根据需要选择适合的图表类型来展示和分析数据。

  2. 数据可视化:Matplotlib使得将数据转化为可视化表示变得简单,可以使用Matplotlib绘制图表来展示数据的分布、趋势、关系等,这有助于更好地理解数据和发现潜在的模式和关联。

  3. 图表自定义:Matplotlib提供了丰富的图表自定义选项,可以调整图表的标题、标签、坐标轴、线条样式、颜色等。这使得您能够创建符合特定需求和品味的高质量图表。

  4. 多子图和布局:Matplotlib允许您在单个图像中创建多个子图,以便同时展示多个相关的图表或数据视图。您可以自定义子图的布局和排列,以满足特定的展示需求。

  5. 导出图像:Matplotlib支持将图像导出为多种格式,包括PNG、JPEG、PDF、SVG等。这使得您可以方便地将生成的图表保存为文件,或嵌入到文档、报告和演示文稿中。

        无论是进行科学研究、数据分析、报告撰写还是可视化展示,Matplotlib都是一个强大而灵活的工具。它广泛应用于各个领域,如数据科学、机器学习、金融分析、工程可视化等。

1、2d绘图类型

2d绘图(上):折线图、散点图、柱状图、直方图、饼图_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132872575?spm=1001.2014.3001.5501​编辑https://blog.csdn.net/m0_63834988/article/details/132872575?spm=1001.2014.3001.5501https://blog.csdn.net/m0_63834988/article/details/132872575?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132872575?spm=1001.2014.3001.5501

2d绘图(下):箱线图、热力图、面积图、等高线图、极坐标图_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132890656?spm=1001.2014.3001.5501​编辑https://blog.csdn.net/m0_63834988/article/details/132890656?spm=1001.2014.3001.5501https://blog.csdn.net/m0_63834988/article/details/132890656?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132890656?spm=1001.2014.3001.5501

2、3d绘图类型

Matplotlib绘图_QomolangmaH的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/category_12441299.html

3、多子图和布局

1. subplot()函数

        用于创建单个子图,其语法如下:

import matplotlib.pyplot as pltplt.subplot(nrows, ncols, index)
  • nrows表示子图的行数
  • ncols表示子图的列数
  • index表示当前子图的索引。
简单示例

import matplotlib.pyplot as plt# 创建一个2行2列的子图布局
plt.subplot(2, 2, 1)  # 第一个子图
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])plt.subplot(2, 2, 2)  # 第二个子图
plt.plot([1, 2, 3, 4], [1, 2, 3, 4])plt.subplot(2, 2, 3)  # 第三个子图
plt.plot([1, 2, 3, 4], [1, 8, 27, 64])plt.subplot(2, 2, 4)  # 第四个子图
plt.plot([1, 2, 3, 4], [1, 16, 81, 256])plt.show()

   

http://www.lryc.cn/news/171788.html

相关文章:

  • 计算机网络知识补充(1)
  • C# Onnx Yolov8 Pose 姿态识别
  • 7.algorithm2e中while怎么使用
  • Flask狼书笔记 | 08_个人博客(下)
  • 机器学习第十课--提升树
  • react scss.modules中使用iconfont
  • 使用Jmeter+ant进行接口自动化测试(数据驱动)
  • 可视化图表组件之股票数据分析应用
  • STM32 ~ GPIO不同模式之间的区别与实现原理
  • dvwa靶场通关(十二)
  • 【shell学习】企业运维工作中常用的shell脚本
  • 对权限的理解和使用
  • MySQL 5.7 通过数据库idb文件快速导入至另一台数据库
  • 第一章 计算机网络基础
  • 本地电脑搭建SFTP服务器,并实现公网访问
  • 易基因直播预告|细菌微生物基因表达调控表观研究易基因科技
  • Flask在线部署ChatGLM2大模型
  • 浅谈Vue3——父子组件传值
  • Wolfram语言之父:ChatGPT到底能做什么? | 阿Q送书第六期
  • antd a-list 添加分页
  • MySQL注入绕安全狗脚本 -- MySQLByPassForSafeDog,以及端口爆破工具 -- PortBrute配置使用
  • R语言绘制热图
  • jmeter线程组 bzm - Concurrency Thread Group 阶梯式压测
  • 计算即时订单比例-首单使用开窗函数row_number()
  • flink集群与资源@k8s源码分析-集群
  • 商城开发:商城系统的哪些功能值得企业去关注?
  • calibre和cpolar搭建一个私有的网络书库
  • c++ nlohmann::json 中文支持
  • vue3 | defineExpose的使用
  • PaddleSeg学习3——使用PP-LiteSeg模型对道路进行分割