IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> matplotlib.pyplot使用for循环进行多个子图Subplot的绘制的方法 -> 正文阅读

[人工智能]matplotlib.pyplot使用for循环进行多个子图Subplot的绘制的方法

matplotlib.pyplot使用for循环进行多个子图Subplot的绘制

一、matplotlib.pyplot绘制子图的基本方法

首先我们来了解一下,matplotlib中绘图需要使用到的元素
在这里插入图片描述
首先是figure图片对象,然后是图片对象包含的子图对象axes,再然后是每个子图对象的轴Axis对象。

我们要进行子图的绘制,首先我们要创建图片对象,然后再创建子图对象,在子图对象上进行绘制,可以使用多种方法。

第一种:

plt.figure()
plt.plot([1, 2, 3])

在这里插入图片描述
我们使用plt.figure()创建了一个图片对象,但是没有给这个图片对象指定引用,这里plt.plot()会自动在已经当前正在使用的figure上进行绘制。效果就如上图所示。

第二种:
创建子图对象然后进行绘制。

fig = plt.figure()
ax1 = plt.subplot(121)
ax2 = plt.subplot(122)
ax1.plot([1,2,3])
ax2.scatter(1,1)

在这里插入图片描述
第三种:
同时创建figure和子图对象

fig, axes = plt.subplots(2, 2)
axes[0, 1].plot([1, 2, 3])
axes[1, 1].plot([1, 2, 3])

在这里插入图片描述
这里的axes是一个numpy的高维数组ndarray
在这里插入图片描述
我们不能直接对axes进行操作进行绘图,我们只能访问其中一个元素获得一个ax后然后再进行绘图。

二、使用for循环进行绘图的一种方法

当我们的绘图语句非常多的时候,代码会显得繁琐,我们需要一种方式来进行循环绘图,但是axes是个ndarray这就限制了我们使用for循环直接来迭代这个高维数组,这样的思路是行不通的,那我们换一个思路。既然axes的类型是ndarry,那么axes肯定有shape属性,可以访问axes的行和列数,这正好和我们指定子图的位置一致。

我们使用一个list,来保存axes中的每一个子图对象,这样我们接下来使用时就方便迭代了

fig, axes = plt.subplots(3, 3)
axes_list = []
for i in range(axes.shape[0]):
    for j in range(axes.shape[1]):
        axes_list.append(axes[i, j])
print(axes_list)

在这里插入图片描述

fig, axes = plt.subplots(3, 3)
axes_list = []
for i in range(axes.shape[0]):
    for j in range(axes.shape[1]):
        axes_list.append(axes[i, j])

for ax in axes_list:
    ax.plot([1, 2, 3])

在这里插入图片描述
当然大家也可以自行修改具体的绘图语句,来达到自己的目的。这里仅提供一个思路。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-03-24 00:32:32  更:2022-03-24 00:33:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 14:52:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码