使用Gradio库进行交互式数据可视化:Timeseries模块介绍
博主原文链接:https://www.yourmetaverse.cn/nlp/439/
使用Gradio库进行交互式数据可视化:Timeseries模块介绍
在数据分析和机器学习任务中,对时间序列数据进行可视化是一项常见且重要的任务。Gradio是一个功能强大的Python库,可以帮助我们快速构建交互式界面,并且它还提供了一个特殊的模块,即Timeseries模块,用于处理时间序列数据的可视化。
Gradio的Timeseries模块允许用户上传和预览时间序列的CSV文件,或者以图形方式显示由时间序列组成的DataFrame。通过这个模块,用户可以通过拖放文件或上传文件来加载时间序列数据,并以图形形式展示数据。
该模块的初始化参数包括:
- value:用于指定时间序列CSV文件的路径,可以是字符串或可调用对象。如果是可调用对象,该函数将在应用程序加载时调用,以设置组件的初始值。
- x:x轴(时间)序列的列名,如果CSV文件没有标题,则为None。
- y:y轴序列的列名,如果有多个序列,则可以是列名的列表。如果CSV文件没有标题,则为None。
- colors:用于每条线图的颜色列表。
- label:组件在界面中的名称。
- every:如果
value
是可调用对象,在客户端连接打开时每隔指定的秒数运行函数。如果没有设置,则不生效。 - show_label:是否显示组件的名称。
- container:是否将组件放置在容器中,提供一些额外的边框填充。
- scale:相对于相邻组件的宽度比例。例如,如果组件A的scale为2,组件B的scale为1,那么A的宽度将是B的两倍。应为整数。
- min_width:最小像素宽度,如果屏幕空间不足以满足该值,则换行。如果某个scale值导致该组件比min_width更窄,则优先使用min_width参数。
- interactive:是否允许用户上传时间序列CSV文件,如果为False,则只能用于显示时间序列数据。如果未提供,则根据组件是作为输入还是输出进行推断。
- visible:是否显示该组件。
- elem_id:可选的字符串,用作该组件在HTML DOM中的ID,可以用于定位CSS样式。
- elem_classes:可选的字符串列表,用作该组件在HTML DOM中的类名,可以用于定位CSS样式。
除了初始化参数外,Timeseries模块还提供了一个change方法,用于在组件的值发生更改时触发事件。该方法适用于在Gradio Blocks中使用该组件的情况。
change方法的参数包括:
- fn:需要包装为界面的函数,通常是一个机器学习模型的预测函数。函数的每个参数对应一个输入组件,函数应返回单个值或值的元组,元组中的每个元素对应一个输出组件。
- inputs:作为输入的组件列表。
- outputs:作为输出的组件列表。
- api_name:定义端点在API文档中的显示方式。
- status_tracker:用于跟踪状态的对象。
- scroll_to_output:如果为True,在完成后将滚动到输出组件。
- show_progress:在等待期间是否显示进度动画。
- queue:是否将请求放入队列中。
- batch:如果为True,则函数应处理一批输入,即接受每个参数的输入值列表。然后函数必须返回一个元组的列表(即使只有一个输出组件),元组中的每个列表对应一个输出组件。
- max_batch_size:如果从队列中调用此方法,则最大批处理输入数量。
- preprocess:是否在运行函数之前运行组件数据的预处理。
- postprocess:是否在将函数输出返回给浏览器之前运行组件数据的后处理。
- cancels:需要在此事件触发时取消的其他事件列表。
- every:在客户端连接打开时每隔指定的秒数运行此事件。
通过Gradio的Timeseries模块,我们可以方便地进行时间序列数据的交互式可视化,无论是上传CSV文件还是直接在界面中显示数据,都能够快速实现。该模块的灵活性和易用性使得数据分析和机器学习工作变得更加高效和直观。
参数详解
下面是关于Timeseries模块和change方法的参数整理表格:
参数名 | 数据类型 | 默认值 | 描述 |
---|---|---|---|
value | str/Callable | None | 用于指定时间序列的CSV文件路径。如果是Callable类型,则在应用程序加载时调用该函数以设置组件的初始值。 |
x | str | None | x(时间)序列的列名。如果CSV文件没有标题,则为None,此时第一列为x序列。 |
y | str/list[str] | None | y序列的列名,如果有多个序列,则为列名列表。如果CSV文件没有标题,则为None,此时第一列之后的每一列都是y序列。 |
colors | list[str] | None | 每个线图使用的颜色的有序列表。 |
label | str | None | 在界面中显示的组件名称。 |
every | float | None | 如果value 是一个callable,将在客户端连接打开时每隔’every’秒运行一次该函数。否则没有影响。队列必须启用。可以通过此组件的.load_event属性访问事件(例如取消它)。 |
show_label | bool | True | 如果为True,则显示标签。 |
container | bool | True | 如果为True,则将组件放置在容器中,提供一些额外的边框填充。 |
scale | int | None | 相对于相邻组件在一行中的宽度比例。例如,如果组件A的scale=2,组件B的scale=1,则A的宽度是B的两倍。应为整数。 |
min_width | int | 160 | 最小像素宽度,如果屏幕空间不足以满足此值,将换行。如果某个scale值导致该组件比min_width更窄,则首先遵守min_width参数。 |
interactive | bool | None | 如果为True,则允许用户上传时间序列的CSV文件;如果为False,则仅可用于显示时间序列数据。如果未提供,将根据组件是用作输入还是输出进行推断。 |
visible | bool | True | 如果为False,则组件将被隐藏。 |
elem_id | str | None | 可选字符串,作为此组件在HTML DOM中的id分配。可用于定位CSS样式。 |
elem_classes | list[str]/str | None | 可选的字符串列表,作为此组件在HTML DOM中的类分配。可用于定位CSS样式。 |
fn | Callable | None | 必需参数。当组件的值发生更改时触发该监听器,无论是因为用户输入(例如用户在文本框中输入)还是因为函数更新(例如图像从事件触发的输出中接收到值)。每个函数参数对应一个输入组件,函数应返回单个值或元组,其中元组的每个元素对应一个输出组件。 |
inputs | Component/list[Component]/set[Component]/None | None | 要用作输入的gradio.components的列表。如果函数不需要输入,则应该是一个空列表。 |
outputs | Component/list[Component]/None | None | 要用作输出的gradio.components的列表。如果函数不返回输出,则应该是一个空列表。 |
api_name | str/None/Literal[False] | None | 定义端点在API文档中的显示方式。可以是字符串、None或False。如果为False,则不会在api文档中公开该端点。如果设置为None,则该端点将作为一个无名端点在api文档中公开,尽管这种行为将在Gradio 4.0中更改。如果设置为字符串,则该端点将以给定的名称在api文档中公开。 |
status_tracker | None | None | |
scroll_to_output | bool | False | 如果为True,则在完成时将滚动到输出组件。 |
show_progress | Literal[‘full’, ‘minimal’, ‘hidden’] | “full” | 如果为True,则在等待时显示进度动画。 |
queue | bool/None | None | 如果为True,则将请求放入队列(如果队列已启用)。如果为False,则即使队列已启用,也不会将此事件放入队列。如果为None,则使用gradio应用程序的队列设置。 |
batch | bool | False | 如果为True,则函数应处理一批输入,这意味着它应接受每个参数的输入值列表。列表的长度应相等(并且最长为max_batch_size)。然后函数 必须 返回一个元组的列表(即使只有1个输出组件),其中元组中的每个列表对应一个输出组件。 |
max_batch_size | int | 4 | 如果从队列调用此方法,则批处理在一起的最大输入数(仅当batch=True时才相关)。 |
preprocess | bool | True | 如果为False,则在运行’fn’之前不运行组件数据的预处理(例如,如果使用Image 组件以base64字符串形式传递,将其保留为base64字符串)。 |
postprocess | bool | True | 如果为False,则在将’fn’输出返回给浏览器之前不运行组件数据的后处理。 |
cancels | dict[str, Any]/list[dict[str, Any]]/None | None | 要在此监听器触发时取消的其他事件列表。例如,设置cancels=[click_event]将取消click_event,其中click_event是另一个组件的.click方法的返回值。尚未运行的函数(或正在迭代的生成器)将被取消,但正在运行的函数将被允许完成。 |
every | float/None | None | 在客户端连接打开时每隔’every’秒运行此事件。以秒为单位解释。队列必须启用。 |
相关文章:

使用Gradio库进行交互式数据可视化:Timeseries模块介绍
❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…...

CONTAINER = ALL是ALTER USER语句的默认值
连接到root时查看有关root,CDB和PDB的数据 当公用用户执行查询时,可以限制X $表和V $,GV $和CDB_ *视图的视图信息。X$表和这些视图包含有关应用程序root及其关联应用程序PDB的信息,或者如果连接到CDB root,则是整个C…...

华为发布大模型时代AI存储新品
7月14日,华为发布大模型时代AI存储新品,为基础模型训练、行业模型训练,细分场景模型训练推理提供存储最优解,释放AI新动能。 企业在开发及实施大模型应用过程中,面临四大挑战: 首先,数据准备时…...
5G网络功能介绍
5G系统架构由以下网络功能(NF)组成 -身份验证服务器功能(AUSF)。 -接入和移动性管理功能(AMF)。 -数据网络(DN),例如运营商服务、互联网接入或第三方服务。 -非结构化数据存储功能(UDSF)。 -网络曝光功能(NEF)。 -网络存储库功能(NRF)。 -网络切片特定身…...
笙默考试管理系统-MyTestMean(13)
笙默考试管理系统-MyTestMean(13) 目录 一、 笙默考试管理系统-MyTestMean 二、 笙默考试管理系统-MyTestMean 三、 笙默考试管理系统-MyTestMean 四、 笙默考试管理系统-MyTestMean 五、 笙默考试管理系统-MyTestMean 笙默考试管理系统-MyTes…...

Tomcat之高可用配置
Nginx搭配Tomcat实现负载均衡 传统模型下,一个项目部署在一台tomcat上,这个时候,假如tomcat因为服务器资源不够,突然挂机了,那么整个项目就无法使用。 Nginx就可以避免单台服务如果挂机,依然能保证服务正…...

IDEA中springboot的热加载thymeleaf静态html页面
1.首先加入开发工具依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional> </dependency> 2.其次在build maven插件中开启热部署 <bu…...

Java中可以使用哪些系统架构?怎样选择?
架构,又名软件架构,是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。 Java企业级的应用根据业务的复杂程度,通常使用的系统架构有应用架构、垂直应用架构、面向服务的架构(Service-Oriented Architectu…...

一文详解什么是数据库分片
概要 应用程序正在变得越来越好,它拥有更多的功能、更多的活跃用户,并且每天都会收集更多的数据。但数据库现在导致应用程序的其余部分变慢。数据库分片可能是问题的答案,但许多人不知道它是什么,最重要的是何时使用它。在本文中我…...

百度留痕是什么方法排名的
百度留痕是什么方法排名的,黑帽seo教学:谷歌外推搜索留痕关键词秒收录排名软件技术培训 #外推留痕 #黑帽seo #黑帽seo培训 今天给大家看一个百度留痕的一个链接,东西也很简单,其实就是前面的一个地址加后面的一个你的联系方式,你…...

基于时域特征和频域特征组合的敏感特征集,再利用CNN进行轴承故障诊断(python编程)
1.文件夹介绍(使用的是CWRU数据集) 0HP-3HP四个文件夹装载不同工况下的内圈故障、外圈故障、滚动体故障和正常轴承数据。 2.模型 按照1024的长度分割样本,构建内圈故障、外圈故障、滚动体故障和正常轴承样本集 2.1.计算11种时域特征值 # 计…...

CAD2021安装教程适合新手小白【附安装包和手册】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、下载文件二、使用步骤1.安装软件前,断开电脑网络(拔掉网线、关闭WIFI)2、鼠标右击【AutoCAD2021(64bit)】压缩包选择【解…...

AcWing 107. 超快速排序—逆序对
问题链接: AcWing 107. 超快速排序 问题描述 分析 这道题考查的算法不难,就只是利用归并排序来求逆序对的数量,但是主要是如何分析问题,如何能从问题中看出来和逆序对数量有关,现在的题目基本上很少是那种模板算法题了ÿ…...

华为、阿里巴巴、字节跳动 100+ Python 面试问题总结(三)
系列文章目录 个人简介:机电专业在读研究生,CSDN内容合伙人,博主个人首页 Python面试专栏:《Python面试》此专栏面向准备面试的2024届毕业生。欢迎阅读,一起进步!🌟🌟🌟 …...
详解在Linux中修改Tomcat使用的jdk版本
问题分析 由于部署个人项目使用了openjdk11,但是我之前安装的是jdk1.8,jdk版本升级的后果就是,tomcat运行的时候报一点小bug(因为之前安装tomcat默认使用了系统的jdk版本)所以就想着把tomcat使用的jdk版本调回原来的&…...
高级 Matplotlib:3D 图形和交互性
Matplotlib 是 Python 中最重要的数据可视化库之一。在之前的文章中,我们讨论了如何使用基础和中级功能来创建各种图形。在本文中,我们将深入研究 Matplotlib 的高级特性,特别是如何创建 3D 图形和交互式图形。 一、创建 3D 图形 Matplotli…...

cloud Alibab+nacos+gateway集成swaggerui,统一文档管理(注意点)
首先说明:本文只说整合注意点 效果图和功能参考链接 1.使用gateway访问nacos服务,503 在网关服务添加依赖即可解决 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign&…...
使用 YOLOv8 进行传输线故障检测-附源码
用于传输线故障检测的 YOLO 我将模型缩小到YOLO 或 Faster R-CNN。但YOLO 作为单次目标检测模型在速度和计算效率方面获得了许多好处。由于基于无人机的实时故障检测是最佳选择,我选择使用 YOLO。YOLO 代表“You Only Look Once”,暗示您只需要通过一个神经网络即可对检测到…...

安装RabbitMQ 详细步骤
我这里是在Linux系统里面安装的按照步骤即可 1. 安装Socat🍉 在线安装依赖环境: yum install gcc yum install socat yum install openssl yum install openssl-devel2. 安装Erlang🍉 去官网下载一下安装包,将安装包拉到Linux系…...

SAP CAP篇十:理解Fiori UI的Annoation定义
本文目录 本系列此前的文章官方文档和基础概念SAP CAP对Fiori UI的支持package.json的新增内容Annotation定义List Page 生成的Edmx文件 对应代码及branch 本系列此前的文章 SAP CAP篇一: 快速创建一个Service,基于Java的实现 SAP CAP篇二:为Service加上…...

MAZANOKE结合内网穿透技术实现跨地域图像优化服务的远程访问过程
文章目录 前言1. 关于MAZANOKE2. Docker部署3. 简单使用MAZANOKE4. 安装cpolar内网穿透5. 配置公网地址6. 配置固定公网地址总结 前言 在数字世界高速发展的今天,您是否察觉到那些静默增长的视觉数据正在悄然蚕食存储空间?随着影像记录成为日常习惯&…...
2025 cs144 Lab Checkpoint 3: TCP Receiver
文章目录 1 关于TCP Sender1.1 关键机制重传超时(RTO)与定时器 2 实现TCP Sender2.1 void push( const TransmitFunction& transmit );const TransmitFunction& transmit 函数型参数?从哪里读取字节࿱…...

如何实现本地mqtt服务器和云端服务器同步?
有时候,一个物联网项目,A客户想要本地使用,B客户想要线上使用,C客户想要本地部署,当有网环境时能线上使用。这个时候就需要本地MQTT服务和线上MQTT服务能相互自动转发。 后来经我一翻研究,其实Activemq支持…...

算法专题七:分治
快排 1.颜色分类 题目链接:75. 颜色分类 - 力扣(LeetCode) class Solution {public void swap(int[] nums, int i, int j){int t = nums[i];nums[i] = nums[j];nums[j] = t;}public void sortColors(int[] nums) {int left=-1 ,i=0 ,right=nums.length;while(i<right){i…...
横向对比npm和yarn
🔧 基本概况 维度npmYarn所属Node.js 官方工具(npm, Inc.)Meta(Facebook)主导开发初始发布时间2010 年2016 年(为了解决 npm 的一些痛点而诞生)默认安装Node.js 安装后自带需要手动安装最新版本…...
【HarmonyOS 5】拍摄美化开发实践介绍以及详细案例
以下是 HarmonyOS 5 拍摄美化功能的简洁介绍,整合核心能力与技术亮点: 一、AI 影像创新 AI 魔法移图 系统级图像分层技术实现人物/物体自由拖拽、缩放与复制,突破传统构图限制。自动分离主体与背景,一键生成错位创意照&…...
如何确定微服务的粒度与边界
确定微服务的粒度与边界 在完成初步服务拆分之后,架构师往往会遇到另一个难题:该拆到多细?哪些功能可以归并为一个服务,哪些又必须单独部署?这就是“服务粒度与边界”的问题。本节将围绕实际架构经验,介绍…...

打卡第39天:Dataset 和 Dataloader类
知识点回顾: 1.Dataset类的__getitem__和__len__方法(本质是python的特殊方法) 2.Dataloader类 3.minist手写数据集的了解 作业:了解下cifar数据集,尝试获取其中一张图片 import torch import torch.nn as nn import…...

Linux--命令行参数和环境变量
1.命令行参数 Linux 命令行参数基础 1.1参数格式 位置参数:无符号,按顺序传递(如 ls /home/user 中 /home/user 是位置参数) 选项参数: 短选项:以 - 开头,单个字母(如 -l 表示长格…...

(2025)Windows修改JupyterNotebook的字体,使用JetBrains Mono
(JetBrains Mono字体未下载就配置,这种情况我不知道能不能行,没做过实验,因为我电脑已经下载了,不可能删了那么多字体做实验,我的建议是下载JetBrains Mono字体,当你使用VsCode配置里面的JetBrains字体也很有用) 首先参考该文章下载字体到电脑上 VSCode 修改字体为JetBrains …...