Python中采用.add_subplot绘制子图的方法简要举例介绍

devtools/2025/1/23 11:32:28/

Python中采用.add_subplot绘制子图的方法简要举例介绍

目录

  • Python中采用.add_subplot绘制子图的方法简要举例介绍
    • 一、Python中绘制子图的方法
      • 1.1 add_subplot函数
      • 1.2 基本语法
        • (1)add_subplot的核心语法
        • (2)add_subplot在中编程中的主要程序段
    • 二、使用.add_subplot绘制子图举例
      • 2.1 问题描述
      • 2.2 程序代码
      • 2.3 运行结果

在Python中中绘图常会用到Matplotlib库,本文讲简要举例说明利用Matplotlib 库中的函数add_subplot实现子图的绘制,并说明其用法。

一、Python中绘制子图的方法

1.1 add_subplot函数

作为Matplotlib 库中的一个函数add_subplot,用于在画布(figure)上添加子图(subplot)。这个方法比较有用,可以帮助使用者在想要在一个图中创建多个子图。

1.2 基本语法

关于如何使用 add_subplot ,本小节给出了使用主要方法:

(1)add_subplot的核心语法
python">ax= fig.add_subplot(nrows, ncols, plot_number)

其中:
nrows: 表示网格中的行数。
ncols: 表示网格中的列数。
plot_number: 指定子图的位置。

例如,fig.add_subplot(2, 3, 5)表示在2x3网格中的左下角放置一个子图,则plot_number应为5。

(2)add_subplot在中编程中的主要程序段
python">import matplotlib.pyplot as plt
fig = plt.figure()
ax_n = fig.add_subplot(nrows, ncols, plot_number)
ax_n.plot(x_n, y_n)
plt.show()

二、使用.add_subplot绘制子图举例

2.1 问题描述

为了 在2*2的图中绘制如下函数所表示的4个子图,
{ y 1 = sin ⁡ x + x y 2 = sin ⁡ x 2 + 2 x y 3 = sin ⁡ x 3 + 3 x y 4 = sin ⁡ x 4 + 4 x \begin{cases} y_{1}=\sin x +x \\ y_{2}=\sin x^2 +2x \\ y_{3}=\sin x^3 +3x \\ y_{4}=\sin x^4 +4x\end{cases} y1=sinx+xy2=sinx2+2xy3=sinx3+3xy4=sinx4+4x,其中 0 ≤ x < 2 π 0\le x <2\pi 0x<2π.
将使用Matplotlib工具库中add_subplot的进行绘图。

2.2 程序代码

示例代码
假设我们想在一个2x2的网格中绘制四个不同的图表:

python">import matplotlib.pyplot as plt
import numpy as np# 1.数据准备x = np.linspace(0, 2* np.pi, 400)
y1 = np.sin(x )+x
y2 = np.sin(x ** 2)+2*x
y3 = np.sin(x ** 3)+3*x
y4 = np.sin(x ** 4)+4*x# 2.创建一个新的图形对象
fig = plt.figure()# 2.1 在2x2的网格中添加子图
ax1 = fig.add_subplot(2, 2, 1) # 左上
ax2 = fig.add_subplot(2, 2, 2) # 右上
ax3 = fig.add_subplot(2, 2, 3) # 左下
ax4 = fig.add_subplot(2, 2, 4) # 右下# 2.2.再各个子图中绘制数据ax1.plot(x, y1)
ax1.set_title('Subplot 1')ax2.plot(x, y2)
ax2.set_title('Subplot 2')ax3.plot(x, y3)
ax3.set_title('Subplot 3')ax4.plot(x, y4)
ax4.set_title('Subplot 4')plt.show()

2.3 运行结果

比如将上述程序,在PyCharm中运行结果如下:

在这里插入图片描述
图1 采用.add_subplot绘制子图的运行结果


http://www.ppmy.cn/devtools/152869.html

相关文章

【深度学习】常见模型-卷积神经网络(Convolutional Neural Networks, CNN)

卷积神经网络&#xff08;CNN&#xff09; 概念简介 卷积神经网络&#xff08;Convolutional Neural Networks, CNN&#xff09;是一种专门用于处理数据具有网格状拓扑结构&#xff08;如图像、语音&#xff09;的深度学习模型。它通过卷积操作从输入数据中提取局部特征&…

3D可视化定制:开启个性化购物新时代,所见即所得

在当前的数字化浪潮中&#xff0c;3D可视化产品定制正悄然革新消费者的购物旅程与企业的营销战略。相较于众多仍局限于二维平面的在线定制服务&#xff0c;3D可视化产品定制为消费者解锁了一个直观互动、高度个性化的定制新天地&#xff0c;赋予他们沉浸式的购物享受。 通过3D…

【深度学习】傅里叶变换

[toc]深度学习中的傅里叶变换 傅里叶变换 傅里叶变换在深度学习中有着广泛的应用&#xff0c;尤其是在信号处理、图像处理和自然语言处理等领域。 1. 傅里叶变换基础 傅里叶变换是一种将信号从时域转换到频域的数学工具。对于连续信号&#xff0c;傅里叶变换定义为&#xf…

fyne 选项卡设计

用户界面的设计至关重要&#xff0c;它直接影响着用户体验。选卡设计作为一种常见的界面布局方式&#xff0c;能够有效地组织和展示信息&#xff0c;使用户能够方便快捷地浏览和操作。 Fyne 是一个用 Go 语言编写的跨平台 GUI 框架&#xff0c;它提供了丰富的组件和功能&#…

Oracle审计

审计是监控选定的用户数据库操作的过程 审计的目的&#xff1a; 调查可疑的数据库活动&#xff1a; 审计可以帮助检测和跟踪潜在的 security breaches、未授权的访问尝试或其他异常行为。通过分析审计日志&#xff0c;可以确定可疑活动的来源、时间、频率和影响。 收集特定数…

【Day24 LeetCode】贪心Ⅱ

一、贪心Ⅱ 1、买卖股票的最佳时机 II 122 这题第一想法是使用动态规划做&#xff0c;每天有两个状态&#xff0c;持有股票和非持有股票&#xff0c;每次计算这两个状态下的最优值。 class Solution { public:int maxProfit(vector<int>& prices) {//表示当前 没有…

李沐vscode配置+github管理+FFmpeg视频搬运+百度API添加翻译字幕

终端输入nvidia-smi查看cuda版本 我的是12.5&#xff0c;在网上没有找到12.5的torch&#xff0c;就安装12.1的。torch&#xff0c;torchvision&#xff0c;torchaudio版本以及python版本要对应 参考&#xff1a;https://blog.csdn.net/FengHanI/article/details/135116114 创…

EXCEL+Python搞定数据处理(第一部分:Python入门-第1章:为什么要用Python为Excel编程)

参考资料&#xff1a; ExcelPython飞速搞定数据分析与处理&#xff0c;[瑞士] 费利克斯朱姆斯坦 著&#xff0c;中国工信出版社、人民邮电出版社出版(“Python for Excel, by Felix Zumstein (O’Reilly). Copyright 2021 Zoomer Analytics LLC, 978-1-492-08100-5”) 将不定…