python之画动态图 gif效果图

import pandas as pd
import matplotlib
import matplotlib.pyplot as plt
import os# set up matplotlib
is_ipython = 'inline' in matplotlib.get_backend()
if is_ipython:from IPython import displayplt.ion()def find_csv_files(directory):csv_files = []  # 用于存储找到的 CSV 文件路径# 遍历指定路径下的所有文件和子目录for root, dirs, files in os.walk(directory):for file in files:# 检查文件是否以 ".csv" 结尾if file.endswith(".csv"):# 构建完整的文件路径并添加到列表中file_path = os.path.join(root, file)csv_files.append(file_path)return csv_files# 指定要查找的路径
directory_to_search = 'carpet'  # 将此路径替换为你想要查找的路径# 调用函数获取符合条件的 CSV 文件路径列表
csv_files_list = find_csv_files(directory_to_search)# 打印找到的 CSV 文件路径
for csv_file in csv_files_list:print(csv_file)def plot_curves(csv_file):# 读取CSV文件df = pd.read_csv(csv_file)num_rows, num_columns = df.shapelines = []# 绘制每一行的曲线图for i in range(num_rows):plt.clf() # 清空画布上的所有内容。此处不能调用此函数,不然之前画出的轨迹,将会被清空。y_values = df.iloc[i]  # 使用前frame+1个数据x_values = range(1, len(y_values) + 1)  # 横坐标使用数据个数line, = plt.plot(x_values, y_values)lines.append(line)plt.pause(0.00001)  # pause a bit so that plots are updatedif is_ipython:display.clear_output(wait=True)display.display(plt.gcf())# 添加标题和标签plt.title('-5mm# Ctm Carpet')plt.xlabel('X')plt.ylabel('Y')# 添加图例plt.legend()# 显示图形plt.show()# 用法示例
csv_file_path = csv_files_list[0] # 替换为你的CSV文件路径
plot_curves(csv_file_path)

下面这两句是动图gif的重点语句

plt.pause(0.00001)  # pause a bit so that plots are updatedif is_ipython:display.clear_output(wait=True)display.display(plt.gcf())
        plt.clf() # 清空画布上的所有内容。此处不能调用此函数,不然之前画出的轨迹,将会被清空。

一个是暂停时间播放下一帧,一个是画布清除

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

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

相关文章

【机器学习】044_Kaggle房价预测(机器学习模型实战)

参考自《动手学深度学习》中“Kaggle比赛实战:预测房价”一节 一、数据准备 首先从网站上下载要获取的房价数据。 DATA_HUB是一个字典,用来将数据集名称的字符串和数据集相关的二元组一一对应。 二元组包含两个值:数据集的URL和用来验证文…

python实现最小二叉堆---最小堆结构

#来源于MOOC学习以及数据结构与算法分析# 在我们学习最小二叉堆代码实现之前,我们需要去了解一下,什么是最小二叉堆(也有最大二叉堆,也叫最大堆)。 也就是说什么是二叉堆???&#…

HiveSql语法优化三 :join优化

前面提到过:Hive拥有多种join算法,包括Common Join,Map Join,Bucket Map Join,Sort Merge Buckt Map Join等;每种join算法都有对应的优化方案。 Map Join 在优化阶段,如果能将Common Join优化为…

Excel中的INDIRECT函数用法

当在 Excel 中使用 INDIRECT 函数时,它可以帮助我们通过引用字符串中的单元格地址来获取对应单元格的值。这个函数非常有用,特别是在需要动态地引用其他单元格的情况下。下面是 INDIRECT 函数的一些用法和示例: 基本用法: INDIREC…

Linux 中的网站服务管理

目录 1.安装服务 2.启动服务 3.停止服务 4.重启服务 5.开机自启 6.案例 1.安装服务 网址服务程序 yum insatll httpd -y 查看所有服务 systemctl list-unit-files 2.启动服务 systemctl start httpd 查看服务进程,确认是否启动 ps -ef|grep httpd 3.停止…

python分析数据出现Text input context does not respond to _valueForTIProperty错误

一开始运行脚本还是不报错的,脚本内容部分如下: 出现了如下的效果图: 后面隔了几天再次运行居然报错了,如下图所示,但是也没有更改代码啊。后来发现原来是输入法导致的,把输入法切换成英文状态就不报错啦。…

【英/中,前端】Form <input> elements must have labels每一个元素应当都有一个标签

原文如下: Form elements must have labels | Axe Rules | Deque University | Deque Systems 编程式的关联标签和窗体控件。 下面以推荐程度从高到低依次排列,使用label元素->使用for和id属性显示关联,就这样。 label标签的包裹 or 不包…

linux下sys目录与proc目录的作用

sys目录作用 在Linux系统中,/sys目录是一个特殊的虚拟文件系统(sysfs),用于提供对内核和设备的运行时信息的访问。它是在内核中运行的驱动程序和子系统的接口,可以用于获取和配置系统的硬件和内核信息。 以下是/sys目…

条件分布律

设是二维离散型随机变量,对于固定的,若,则称 , 其中 为在条件下随机变量的条件分布律。 对于固定的,若,则称 , 其中 为在条件下随机变量的条件分布律。

内网穿透工具,如何保障安全远程访问?

内网穿透工具是一种常见的技术手段,用于在没有公网IP的情况下将本地局域网服务映射至外网。这种工具的使用极大地方便了开发人员和网络管理员,使得他们能够快速建立起本地服务与外部网络之间的通信渠道。然而,在享受高效快捷的同时&#xff0…

C语言之函数设计(1)

目录 没有返回值的函数 通用性 不含形参的函数 函数返回值的初始化 作用域 文件作用域 声明和定义 函数原型声明 头文件和文件包含指令 在上节中我们简单的学习了函数的创建方法(函数定义)与函数的使用方法(函数调用)&…

特殊日期。

问题描述 对于一个日期,我们可以计算出年份的各个数位上的数字之和也可以分别计算月和日的各位数字之和。请问从1900年1月1日至9999年12月31日,总共有多少天,年份的数位数字之和等于月的数位数字之和加日的数位数字之和。 例如,20…

现代雷达车载应用——第2章 汽车雷达系统原理 2.2节 汽车雷达架构

经典著作,值得一读,英文原版下载链接【免费】ModernRadarforAutomotiveApplications资源-CSDN文库。 2.2 汽车雷达架构 从顶层来看,基本的汽车雷达由发射器,接收器和天线组成。图2.2给出了一种简化的单通道连续波雷达结构[2]。这…

Doris集群搭建——2.0.1.1版本

目录 一、启动Doris 二、配置并分发doris安装包和环境变量 1.分发doris安装包 2.解压安装包 3.分发环境变量 4.修改对应的配置文件 (1)修改be的配置 (2)修改fe的配置 三、be的扩容与缩容 (一)be扩容 1.添加be节点 3.另外两个节点启动be 4.重新查看be节点状态 (二…

NPM的介绍及使用详解

NPM(Node Package Manager)是Node.js的包管理工具,它让开发者能够方便地在自己的项目中使用和分享代码。 NPM不仅提供了一个庞大的代码库,还提供了命令行界面,用于下载、安装、更新和管理代码包。 下面详细介绍NPM的介…

数据可视化?这些平台能处

图表在各行各业都起到举重若轻的作用,无论是项目汇报、业绩分析,亦或是数据挖掘、统计分析,良好的可视化可以为我们的阐述起到画龙点睛的效果。在一篇文章中,如果只有密密麻麻的文字堆积,无论是谁恐怕都无法长期保持注…

Python实验 —— 简易计算器制作

Python实验 —— 简易计算器制作 实验说明实验过程实验分析 实验说明 Python 作为一门功能强大且易学的编程语言,为我们提供了丰富的工具和库,使得创造有趣的应用成为一种愉快的体验。在这个 Python 实验中,我们将一起探索并构建一个简易计算…

如何预防最新的.locked、.locked1勒索病毒感染您的计算机?

尊敬的读者: 近期,网络安全领域迎来一股新潮——.locked、.locked1勒索病毒的威胁,其先进的加密技术令人生畏。本文将深入剖析.locked、.locked1勒索病毒的阴谋,提供特色数据恢复策略,并揭示锁定恶劣行径的先锋预防手…

【中等】73. 矩阵置零

题目 73. 矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]] 示例 2…

RK3568平台(网络篇)添加网络交换芯片RTL8306M

一.硬件原理图 分析: 该交换芯片支持I2C、SPI、mdio通信,但是看ast1520的uboot代码采用的是mdio去通信phy芯片的,所以暂时也先采用mdio的方式,需要配置相应的引脚才可以配置成mdio通信模式,具体的配置硬件工程师解决。…