python可视化将多张图整合到一起(画布)

        这周有点事忙着,没时间重温刚结束的Mathurcup数学建模,这两天也是再看了下,论文还是赶紧挺烂的,但比国赛又有进步(说起国赛又不得不抱怨了,基本其余省份都发了,但江西......哎)。哎,数模就是这样,想起刚接触数模,也是参加了Mathurcup,结果。。。

        咳咳,跑偏了,就这次Mathurcup而言,还是感觉到了有些乏力,毕竟平常也都不会去专门看数模,都是比赛的时候临时学,有些模型、方法还是很生。但熬了这么久,也算学到了点啥,对于我来说,我是敲代码的,思路方面不用我操心,理解他思路就行,但代码方面,我印象很深刻的就是学会了用画布,之前参考优秀论文的时候经常能看见这种图,一张图中有很多子图。类似下面这种:

        其实实现也蛮简单的,下面是一个例子,也是本次Mathurcup的数据处理某个环节,具体注释也给了:

import matplotlib.pyplot as plt
import pandas as pdi = 1
# 创建包含 8 个子图的图布
fig, axs = plt.subplots(4, 2, figsize=(12, 8))  #可调整
# 因为要为每个子图进行相同的绘图操作,可以使用 flatten() 将其转换为一维数组
axs = axs.flatten()# 遍历文件夹中的所有文件
for j in range(140,281, 20):file_path = f"D:\\OneDrive\\桌面\\2024Mathurcup\\附件二处理后数据\\category{j}.xlsx"# 读取文件df = pd.read_excel(file_path)# 取数据x_axis_data = df['日期']y_axis_data = df['销量']# 后面子图名称line_name = f"category{j}"axs[i - 1].plot(x_axis_data, y_axis_data, 'b*--', alpha=0.5, linewidth=1, label=line_name)  # 绘制曲线axs[i - 1].legend(loc='upper right', bbox_to_anchor=(1.05, 1), borderaxespad=0.)# 设置 X 轴刻度axs[i - 1].xaxis.set_major_locator(plt.MaxNLocator(nbins=5))# 设置x轴、y轴axs[i - 1].set_xlabel('日期', fontdict={"family": "KaiTi", "size": 15, "color": "b"})axs[i - 1].set_ylabel('销量', fontdict={"family": "KaiTi", "size": 15, "color": "b"})i += 1
# 自动调整子图参数,确保子图之间以及子图和标签之间的间距合理,避免重叠,从而使得图像布局更加整洁和美观。
plt.tight_layout()
plt.savefig("D:/picture_1.png")
plt.show()

运行结果如下,向这种就适合那些数据文件很多的抽样展示:

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。看啥。没有了,学习去!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/468067.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jsp+sevlet+mysql实现用户登陆和增删改查功能

jspsevletmysql实现用户登陆和增删改查功能 一、系统介绍二、功能展示1.用户登陆2.用户列表3.查询用户信息4.添加用户信息5.修改用户信息6.删除用户信息 四、其它1.其他系统实现 一、系统介绍 系统主要功能: 用户登陆、添加用户、查询用户、修改用户、删除用户 二…

Python小白学习教程从入门到入坑------第二十九课 访问模式文件定位操作(语法进阶)

一、访问模式 模式可做操作若文件不存在是否覆盖r只能读报错-r可读可写报错是w只能写创建是w可读可写创建是a只能写创建否,追加写a可读可写创建否,追加写 1.1 r r:只读模式(默认模式),文件必须存在,不存在就会报错…

TIOBE 编程指数 11 月排行榜公布 VB.Net第九

IT之家 11 月 9 日消息,TIOBE 编程社区指数是一个衡量编程语言受欢迎程度的指标,评判的依据来自世界范围内的工程师、课程、供应商及搜索引擎,今天 TIOBE 官网公布了 2024 年 11 月的编程语言排行榜,IT之家整理如下: P…

聚合联盟的优势

聚合广告联盟对比其他平台优势: 数据透明,自己去平台查看不存在扣量问题。对OVHM做策略优化,帮助开发者做多重点击和下载,使开发者利益最大化。为开发者提供app各大市场上架,隐私协议等指导。 最大的优势就是数据公开…

FakeLocation 版本问题

前言:最新版的FakeLocation 1.3.5 BETA版本在appconfigs.xml文件种添加了绝大多数的应用,导致会返回真实的物理位置,在1.3.2.2都没有这个问题,但是旧版是会被强制更新,不然无法使用. 版本问题/注入/代理 方法 需要使用FakeLocation有二种办法…

算法(第一周)

一周周五,总结一下本周的算法学习,从本周开始重新学习许久未见的算法,当然不同于大一时使用的 C 语言以及做过的简单题,现在是每天一题 C 和 JavaScript(还在学,目前只写了一题) 题单是代码随想…

大语言模型LLMs在医学领域的最新进展总结

我是娜姐 迪娜学姐 ,一个SCI医学期刊编辑,探索用AI工具提效论文写作和发表。 相比其他学科,医学AI,是发表学术成果最多的领域。 医学数据的多样性和复杂性(包括文本、图像、基因组数据等),使得…

服务器被病毒入侵如何彻底清除?

当服务器遭遇病毒入侵时,彻底清除病毒是确保系统安全和数据完整性的关键步骤。这一过程不仅需要技术上的精准操作,还需要严密的计划、合理的资源调配以及后续的防范措施。以下是一篇关于如何在服务器被病毒入侵时彻底清除病毒的详细指南。 一、初步响应与…

Javascript中如何实现函数缓存?函数缓存有哪些应用场景?

#一、是什么 函数缓存,就是将函数运算过的结果进行缓存 本质上就是用空间(缓存存储)换时间(计算过程) 常用于缓存数据计算结果和缓存对象 解释 const add (a,b) > ab; const calc memoize(add); // 函数缓存…

基于LLaMA-Factory微调Llama3

本文简要介绍下基于LLaMA-Factory的llama3 8B模型的微调过程 环境配置 # 1. 安装py3.10虚拟环境 conda create -n py3.10-torch2.2 python3.10 source activate conda activate py3.10-torch2.2# 2. 安装cuda12.2 gpu版torch2.2 conda install pytorch2.2.2 torchvision0.17.…

学习记录:js算法(九十):N皇后

文章目录 N 皇后思路一 N 皇后 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇…

RTC精度及校准

RTC精度偏差: RTC的基准时间和精度与石英晶体的频率相关,晶体的谐振频率取决于温度,因此RTC性能与温度相关,晶体的频率偏差是晶体正常频率的温度反转函数。 一、硬件方面: 1.使用高精度振荡器的RTC模块; …

Axure PR 9 多级下拉选择器 设计交互

​ 大家好,我是大明同学。 Axure选择器是一种在交互设计中常用的组件,这期内容,我们来探讨Axure中多级下拉选择器设计与交互技巧。 下拉列表选择输入框元件 创建选择输入框所需的元件 1.在元件库中拖出一个矩形元件。 2.选中矩形元件&…

【设计模式系列】享元模式(十五)

目录 一、什么是享元模式 二、享元模式的角色 三、享元模式的典型应用场景 四、享元模式在ThreadPoolExecutor中的应用 1. 享元对象(Flyweight)- 工作线程(Worker) 2. 享元工厂(Flyweight Factory)- …

LeetCode热题100之贪心算法

1.买卖股票的最佳时机 思路分析:即需要找出某一天的最低价格和它后面几天的最高价格差。 维护一个变量min_price,表示到目前为止遇到的最低股票价格;遍历prices数组,在每一天的价格上: 更新min_price为当前的价格和mi…

git 对已提交的说明进行编辑

如果提交代码的时候,对上次提交代码的说明不准确的话,例如 1、可以使用 git log 查看代码提交的记录; 2、使用 git commit --amend 命令对上次提交的说明进行编辑: 当显示上次提交的内容的时候,按下键盘 i 键即可编辑…

Hive简介 | 体系结构

Hive简介 Hive 是一个框架,可以通过编写sql的方式,自动的编译为MR任务的一个工具。 在这个世界上,会写SQL的人远远大于会写java代码的人,所以假如可以将MR通过sql实现,这个将是一个巨大的市场,FaceBook就这…

四期书生大模型实战营(【基础岛】- 第1关 | 书生·浦语大模型开源开放体系)

文章目录 1. 性能提升、推理能力领先1.1. 书生浦语开源时间线1.1.1. 时间节点1.1.2. InternLM性能天梯 1.2. 模型亮点1.2.1. 推理能力1.2.2. 长文本支持1.2.3. 复杂任务的自动规划与搜索 1.3. 核心技术思路 2. 支持多模态预训练与微调2.1. 开源模型谱系2.2. 核心优势 3. 书生浦…

python之正则表达式总结

正则表达式 对于正则表达式的学习,我整理了网上的一些资料,希望可以帮助到各位!!! 我们可以使用正则表达式来定义字符串的匹配模式,即如何检查一个字符串是否有跟某种模式匹配的部分或者从一个字符串中将与…

Jmeter的安装,设置中文,解决乱码问题

1.Jmeter安装 1-Jmeter如何下载 1---我这里提供一个下载快的方式 https://www.123684.com/s/lWZKVv-4jiav?提取码:4x4y 2---Jmeter官网下载地址 Apache JMeter - Download Apache JMeter 2-配置java环境 1---下载javaJDK 官方下载地址 https://www.oracle.com/java/techno…