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

Python画图(多图展示在一个平面)

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。

文章目录

  • 一、准备表格数据
  • 二、读取表格数据
    • 1. 引入所需库
    • 2. 读取文件数据
    • 3. 打印模型数据
  • 三、将多图画在一个平面上展示
    • 1. 获取模型中的列字段数量
    • 2. 遍历列字段并画图
    • 3. 展示平面图
    • 4. 保存图片
  • 四、完整代码
  • 六、执行后的输出展示
    • 1. 控制带输出
    • 2. 画图结果输出
    • 3. 保存的视图查看


关于python读取Excel表格数据并并画图保存简单实现可参考:
Python读取Excel表格数据并画图保存(pandas读取、matplotlib画图)

如何将多个图画在同一个平面上展示,如下
在这里插入图片描述
文章所需excel表格文件和完整代码文件已打包上传到CSDN资源库,点击链接直接获取
Python matplotlib画图 pandas表格数据读取 将多个图画在同一个平面内

一、准备表格数据

准备一个Excel文件,并填充数据
创建文件test01.xlsx
将sheet页名称该位car
填充三个字段speed_km_h、temp_c、time_s
填充数据,如下图
在这里插入图片描述

二、读取表格数据

读取表格中的数据,并将读取的模型数据打印输出到控制台
注:需提前下载对应的库信息,可参考文首文章链接

1. 引入所需库

引入pandas库用于读取表格文件
引入matplotlib库用于画图

#引入pandas用于读取
import pandas as pd
#引入matplotlib用于画图
import matplotlib.pyplot as plt

2. 读取文件数据

通过pandas库的函数读取表格文件数据

#使用pandas读取excel表,可指定sheet页的名字
df = pd.read_excel("./test01.xlsx",sheet_name="car")

3. 打印模型数据

打印模型数据

#打印读取的模型
print("df: ",df)print("="*100)

输出如下
在这里插入图片描述

三、将多图画在一个平面上展示

1. 获取模型中的列字段数量

根据前面读取的数据模型,获取模型中列字段的个数,后续根据列的个数决定输出图的个数

#打印出新模型的列字段数量
field = df.columns.size
print(field)

2. 遍历列字段并画图

根据列字段进行画图,先选择一个字段作为横坐标,然后将所有字段当做纵坐标进行画图

#遍历模型的所有字段
for i, item in enumerate(list(df.columns)):#打印字段值print(i, item)print("="*100)# if item == "time_s":# continue#定义打印视图的参数,field表示线形图的数量,1表示将线形图放在一个图中,i+1表示遍历打印视图,该参数不能为0,所以需要加一plt.subplot(field, 1, i+1)#打印,以tims_s为横轴,三个字段speed_km_h、time_s、temp_c为纵轴画图plt.plot(df["time_s"], df[item])

3. 展示平面图

将整个平面图展示出来

#将整个视图展示
plt.show()

4. 保存图片

在展示的函数show()之前使用savefig()保存图片

# 保存图片到本地,保存在当前位置,以jpg格式存储
filename = "car"
plt.savefig(f"./{filename}.jpg")

四、完整代码

以下为完整代码

#引入pandas用于读取
import pandas as pd
#引入matplotlib用于画图
import matplotlib.pyplot as plt#需要下载openpyxl,pandas#使用pandas读取excel表,可指定sheet页的名字
df = pd.read_excel("./test01.xlsx",sheet_name="car")#打印读取的模型
print("df: ",df)print("="*100)#打印表头字段
print("df.colums: ",df.columns)print("="*100)#打印出新模型的列字段数量
field = df.columns.size
print(field)#遍历模型的所有字段
for i, item in enumerate(list(df.columns)):#打印字段值print(i, item)print("="*100)# if item == "time_s":# continue#定义打印视图的参数,field表示线形图的数量,1表示将线形图放在一个图中,i+1表示遍历打印视图,该参数不能为0,所以需要加一plt.subplot(field, 1, i+1)#打印,以tims_s为横轴,三个字段speed_km_h、time_s、temp_c为纵轴画图plt.plot(df["time_s"], df[item])# 保存图片到本地,保存在当前位置,以jpg格式存储
filename = "car"
plt.savefig(f"./{filename}.jpg")#将整个视图展示
plt.show()

六、执行后的输出展示

执行完整代码,查看输出结果

1. 控制带输出

控制台输出如下
在这里插入图片描述

2. 画图结果输出

画图结果输出如下,横轴为时间,纵轴为三个字段,三个图在同一平面展示
在这里插入图片描述

3. 保存的视图查看

如图所示,保存位置为当前位置,名称为car.jpg,内容如下
在这里插入图片描述


感谢阅读,祝君暴富!

相关文章:

Python画图(多图展示在一个平面)

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…...

python-web应用程序-Django数据库-操作表中的数据

python-web应用程序-Django数据库-操作表中的数据 一、新增数据 类.objects.create(字段名 字段值,字段名 字段值,...)导入models包 models.User.objects.create(nameyulin,sex0,info三好学生)即可对数据进行操作 二、删除数据 类.objects.filter(…...

绕过WAF(Web应用程序防火墙)--介绍、主要功能、部署模式、分类及注入绕过方式等

网站WAF是一款集网站内容安全防护、网站资源保护及网站流量保护功能为一体的服务器工具。功能涵盖了网马/木马扫描、防SQL注入、防盗链、防CC攻击、网站流量实时监控、网站CPU监控、下载线程保护、IP黑白名单管理、网页防篡改功能等模块。能够为用户提供实时的网站安全防护&…...

11.7 堆排序

目录 11.7 堆排序 11.7.1 算法流程 11.7.2 算法特性 11.7 堆排序 Tip 阅读本节前,请确保已学完“堆“章节。 堆排序(heap sort)是一种基于堆数据结构实现的高效排序算法。我们可以利用已经学过的“建堆操作”和“元素出堆操作”…...

Patchwork++:基于点云的快速、稳健的地面分割方法

1. 背景 论文发表在2022IROS,是Patchwork的改进版本。算法通过数学方法进行快速而鲁棒性很强的地面分割,在智能机器人上的可操作性非常强。通过微调算法,可以应用于16-beams等多种规格的激光雷达。由于激光雷达点云数据标注的难度非常大&…...

Llama改进之——分组查询注意力

引言 今天介绍LLAMA2模型引入的关于注意力的改进——分组查询注意力(Grouped-query attention,GQA)1。 Transformer中的多头注意力在解码阶段来说是一个性能瓶颈。多查询注意力2通过共享单个key和value头,同时不减少query头来提升性能。多查询注意力可能导致质量下…...

英伟达开源新利器NV-Embed向量模型,基于双向注意力的LLM嵌入模型,MTEB 56项任务排名第一

前言 文本嵌入模型能够将文本信息转化为稠密的向量表示,并在信息检索、语义相似度计算、文本分类等众多自然语言处理任务中发挥着关键作用。近年来,基于解码器的大型语言模型 (LLM) 开始在通用文本嵌入任务中超越传统的 BERT 或 T5 嵌入模型&#xff0c…...

JVM之【GC-垃圾清除算法】

Java虚拟机(JVM)中的垃圾收集算法主要分为以下几种: 标记-清除算法(Mark-Sweep)复制算法(Copying)标记-整理算法(Mark-Compact)分代收集算法(Generational C…...

数据分析每周挑战——心衰患者特征数据集

这是一篇关于医学数据的数据分析,但是这个数据集数据不是很多。 背景描述 本数据集包含了多个与心力衰竭相关的特征,用于分析和预测患者心力衰竭发作的风险。数据集涵盖了从40岁到95岁不等年龄的患者群体,提供了广泛的生理和生活方式指标&a…...

单例模式(Java实现)

我的相关文章: JavaSE 学习记录-CSDN博客 多线程笔记-CSDN博客 单例模式(Java实现)-CSDN博客 JUC笔记-CSDN博客 注解与反射(Java,类加载机制,双亲委派机制)-CSDN博客 1. 懒汉式线程不安全 pu…...

24.面向对象六大原则

目录介绍 00.面向对象六大原则01.代码单一职责原则02.代码开放封闭原则03.代码里氏替换原则04.代码依赖倒置原则05.代码接口隔离原则06.代码迪米特原则00.面向对象六大原则 六大原则一句话介绍 单一职责原则:指一个类的功能要单一,不能包罗万象。开放封闭原则:指一个模块在扩…...

Vue3-shallowRef与shallowReactive

shallowRef 作用:创建一个响应式数据,但只对顶层属性进行响应式处理。 用法: let myVar shallowRef(initialValue);特点:只跟踪引用值的变化,不关心值内部的属性变化。 shallowReactive 作用:创建一个浅…...

CI/CD(基于ESP-IDF)

主要参考资料 B站乐鑫信息科技《【乐鑫全球开发者大会】DevCon23 #15 |通过 CI/CD 进行流水线开发》 pytest-embedded乐鑫文档: https://docs.espressif.com/projects/pytest-embedded/en/latest/api.html 目录 CI/CD简介乐鑫内部CI/CD测试GitLab CI/CDGitHub Actio…...

聚观早报 | 东风奕派eπ008将上市;苹果Vision Pro发布会

聚观早报每日整理最值得关注的行业重点事件,帮助大家及时了解最新行业动态,每日读报,就读聚观365资讯简报。 整理丨Cutie 6月3日消息 东风奕派eπ008将上市 苹果Vision Pro发布会 特斯拉Model 3高性能版开售 小米14推送全新澎湃OS系统 …...

k8s牛客面经篇

k8s的pod版块: k8s的网络版块: k8s的deployment版块: k8s的service版块: k8s的探针板块: k8s的控制调度板块: k8s的日志监控板块: k8s的流量转发板块: k8s的宏观版块:...

第9周 基于MinIO与OSS实现分布式与云存储

第9周 基于MinIO与OSS实现分布式与云存储 1. 基于mybatis-plus数据修改非空属性忽略更新2. 文件上传3. 分布式文件存储3.1 文件存储架构演变4. Minio docker安装5. 文件服务整合minio依赖minio API测试yml配置minio信息minio配置类业务:上传文件6. 云存储阿里OSS:要钱6.1 依赖6…...

【Linux内核-编程指南】

■ IPC组件 添加链接描述 ■ ■ ■ ■ ■...

Go 编程风格指南 - 最佳实践

Go 编程风格指南 - 最佳实践 原文:https://google.github.io/styleguide/go 概述 | 风格指南 | 风格决策 | 最佳实践 注意: 本文是 Google Go 风格 系列文档的一部分。本文档是 规范性(normative) 但不是强制规范(canonical),并且从属于Goo…...

awk的应用

步骤一:awk的基本用法 1)基本操作方法 格式1:awk [选项] [条件]{指令} 文件 格式2:前置指令 | awk [选项] [条件]{指令} 其中,print 是最常用的编辑指令;若有多条编辑指令,可用分号分隔。 …...

【网络原理】HTTP|认识请求“报头“|Host|Content-Length|Content-Type|UA|Referer|Cookie

目录 认识请求"报头"(header) Host Content-Length Content-Type User-Agent(简称UA) Referer 💡Cookie(最重要的一个header,开发&面试高频问题) 1.Cookie是啥? 2.Cookie怎么存的? …...

ESP32硬件PWM控制库PWMOutESP32实战指南

1. PWMOutESP32 库深度解析:面向嵌入式工程师的 ESP32 PWM 控制实践指南 1.1 库定位与工程价值 PWMOutESP32 是一个专为 ESP32 系列微控制器设计的轻量级 PWM 输出控制库,其核心目标是提供 Arduino 风格的 pwm.analogWrite(pin, value) 接口&#xff…...

TRO组团和解中,快至1天谈好

以下案件组团和解中26-cv-269026-cv-315226-cv-046726-cv-287026-cv-192826-cv-180626-cv-304226-cv-2867...

为什么选择Clef Handbook:15个创新政策彻底改变传统雇佣关系

为什么选择Clef Handbook:15个创新政策彻底改变传统雇佣关系 【免费下载链接】handbook An employee handbook built for inclusion 项目地址: https://gitcode.com/gh_mirrors/handbook6/handbook Clef Handbook是一份为包容性而构建的员工手册(…...

BaGet实战教程:如何配置和使用镜像功能加速包下载

BaGet实战教程:如何配置和使用镜像功能加速包下载 【免费下载链接】BaGet A lightweight NuGet and symbol server 项目地址: https://gitcode.com/gh_mirrors/ba/BaGet BaGet是一款轻量级的NuGet和符号服务器,通过配置其镜像功能,开发…...

实战演练,在快马平台用openclaw命令构建日志分析监控系统

今天想和大家分享一个很实用的技术实践——如何在InsCode(快马)平台上快速搭建一个日志分析监控系统。这个系统主要利用了openclaw命令的强大功能,能够帮助我们高效处理服务器日志数据。 系统整体设计思路 这个日志分析系统主要包含三个核心部分:日志展…...

基于RetinaFace的课堂考勤系统:人脸识别与数据分析

基于RetinaFace的课堂考勤系统:人脸识别与数据分析 1. 为什么传统点名方式正在被智能考勤替代 早上八点的教室里,老师站在讲台前翻着花名册,学生低头刷手机,后排有人悄悄把书包放在空座位上——这种场景在高校和职业院校并不少见…...

ThinkPad散热控制新境界:TPFanCtrl2全方位应用指南

ThinkPad散热控制新境界:TPFanCtrl2全方位应用指南 【免费下载链接】TPFanCtrl2 ThinkPad Fan Control 2 (Dual Fan) for Windows 10 and 11 项目地址: https://gitcode.com/gh_mirrors/tp/TPFanCtrl2 一、核心价值解析:为何选择TPFanCtrl2 突破…...

告别重复配置!用VirtualBox的OVA/OVF功能5分钟克隆Ubuntu 20.04服务器环境

5分钟掌握VirtualBox环境克隆术:Ubuntu 20.04标准化部署实战 在团队协作或教育培训场景中,最令人头疼的莫过于每台设备重复配置开发环境。上周我们团队新入职的三名工程师,花了整整两天时间才完成基础环境搭建——直到发现VirtualBox的OVA/OV…...

6个核心步骤构建自定义Minecraft地形世界

6个核心步骤构建自定义Minecraft地形世界 【免费下载链接】ReTerraForged a 1.19 port of https://github.com/TerraForged/TerraForged 项目地址: https://gitcode.com/gh_mirrors/re/ReTerraForged ReTerraForged是一款专为Minecraft 1.19版本设计的高级地形生成模组&…...

SOLOv2的‘动态’内核与‘矩阵’NMS:深入代码看它如何比SOLO快3倍

SOLOv2动态内核与矩阵NMS的工程实现奥秘 在计算机视觉领域,实例分割一直是一个极具挑战性的任务,它要求模型不仅要检测出图像中的每个对象,还要精确地描绘出每个对象的轮廓。SOLO系列算法作为这一领域的创新者,从v1到v2的演进中展…...