使用Gradio的BarPlot模块创建交互式柱状图

news2024/9/26 3:32:10

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️

👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈

博主原文链接:https://www.yourmetaverse.cn/nlp/344/

请添加图片描述

(封面图由文心一格生成)

使用Gradio的BarPlot模块创建交互式柱状图

在数据可视化中,柱状图是一种常用的图表类型,用于展示不同类别的数据之间的比较和分布。Gradio是一个强大的Python库,提供了一种简单而灵活的方式来创建交互式界面,并通过其BarPlot模块实现了柱状图的可视化功能。

在本文中,我们将介绍Gradio的BarPlot模块以及它的changeclear方法。首先,让我们来了解一下BarPlot模块的基本用法。

BarPlot模块可以通过调用gradio.BarPlot()来创建一个柱状图。它的主要参数包括:

  • value:用于显示在柱状图中的数据,可以是一个Pandas DataFrame或可调用对象。
  • x:对应于X轴的列名。
  • y:对应于Y轴的列名。
  • color:确定柱状图颜色的列名,必须是离散值。
  • vertical:控制柱状图的显示方向,True表示垂直显示,False表示水平显示。
  • group:将整个图分成多个子图的列名。
  • title:图表的标题。
  • tooltip:当用户悬停在柱状图上时显示的工具提示信息。
  • x_title:X轴的标题。
  • y_title:Y轴的标题。
  • color_legend_title:颜色图例的标题。
  • group_title:子图列(或行,如果vertical=True)的标签。
  • color_legend_position:颜色图例的位置。
  • height:图表的高度(以像素为单位)。
  • width:图表的宽度(以像素为单位)。
  • y_lim:Y轴的限制范围。
  • caption:图表下方显示的说明文字。
  • interactive:是否允许用户通过鼠标或触控板进行平移或缩放的交互操作。
  • label:图表左上角显示的标签。
  • show_label:是否显示标签。
  • container:是否显示容器。
  • scale:缩放比例。
  • min_width:最小宽度。
  • every:在客户端连接打开时以指定秒数运行此事件。
  • visible:是否可见。
  • elem_id:HTML DOM中此组件的ID。
  • elem_classes:HTML DOM中此组件的类。

BarPlot模块还提供了changeclear两种方法。

change方法用于监听组件值的变化,无论是由用户输入引起的(例如用户在文本框中输入)还是由函数更新引起的(例如图像从事件触发的输出接收到值)。该方法适用于当此

组件位于Gradio Blocks中时使用。它的参数包括:

  • fn:需要包装接口的函数,通常是机器学习模型的预测函数。
  • inputs:作为输入的Gradio组件列表。
  • outputs:作为输出的Gradio组件列表。

clear方法用于监听用户通过点击组件的X按钮来清除组件(例如图像或音频)。该方法适用于当此组件位于Gradio Blocks中时使用。它的参数与change方法相同。

通过使用Gradio的BarPlot模块,我们可以轻松创建交互式的柱状图,并根据用户的输入和函数的更新实时更新图表。这为数据可视化和交互式数据分析提供了便利和灵活性。

参数说明

参数数据类型默认值描述
valuepd.DataFrame | Callable | NoneNone包含要在柱状图中显示的数据的Pandas DataFrame。
xstr | NoneNoneX轴对应的列名。
ystr | NoneNoneY轴对应的列名。
colorstr | NoneNone确定柱状图颜色的列名,必须是离散值。
verticalboolTrue如果为True,柱状图将垂直显示。如果为False,则X轴和Y轴将交换,以水平方式显示柱状图。默认为True。
groupstr | NoneNone将整个图分割为较小子图的列名。
titlestr | NoneNone图表的标题。
tooltiplist[str] | str | NoneNone当用户悬停在柱状图上时显示的工具提示信息的列名(或列名列表)。
x_titlestr | NoneNoneX轴的标题。默认情况下,使用x参数的值。
y_titlestr | NoneNoneY轴的标题。默认情况下,使用y参数的值。
color_legend_titlestr | NoneNone颜色图例的标题。默认情况下,使用color参数的值。
group_titlestr | NoneNone子图列(或行,如果vertical=True)的标签。使用空字符串来省略标签。
color_legend_positionstr | NoneNone颜色图例的位置。如果传递字符串值"none",则省略该图例。其他有效的位置值请参考:https://vega.github.io/vega/docs/legends/#orientation。
heightint | NoneNone图表的高度(以像素为单位)。
widthint | NoneNone图表的宽度(以像素为单位)。
y_limlist[int] | NoneNoneY轴的限制范围,指定为[y_min, y_max]的列表。
captionstr | NoneNone图表下方显示的说明文字。
interactivebool | NoneTrue用户是否可以通过鼠标或触摸板进行平移或缩放的交互操作。
labelstr | NoneNone图表左上角显示的标签。
show_labelboolTrue是否显示标签。
containerboolTrue如果为True,图表将显示在容器中。
scaleint | NoneNone缩放级别。
min_widthint160图表的最小宽度(以像素为单位)。
everyfloat | NoneNone如果value是一个可调用对象,在客户端连接开放时每隔一段时间运行该函数。否则没有效果。队列必须启用。事件可以通过此组件的.load_event属性访问(例如取消它)。
visibleboolTrue图表是否可见。
elem_idstr | NoneNone作为此组件在HTML DOM中的ID分配的可选字符串。可用于定位CSS样式。
elem_classeslist[str] | str | NoneNone作为此组件在HTML DOM中的类分配的可选字符串列表。可用于定位CSS样式。

change方法参数

参数数据类型默认值描述
fnCallable | Nonerequired要包装接口的函数,通常是机器学习模型的预测函数。函数的每个参数对应于一个输入组件,函数应返回一个值或值的元组,其中元组中的每个元素对应于一个输出组件。
inputsComponent | list[Component] | set[Component] | NoneNone用作输入的Gradio组件的列表。如果函数不接受输入,应该是一个空列表。
outputsComponent | list[Component] | NoneNone用作输出的Gradio组件的列表。如果函数不返回输出,应该是一个空列表。
api_namestr | NoneNone定义此参数将在API文档中公开该端点。
status_trackerNoneNone
scroll_to_outputboolFalse如果为True,将在完成时滚动到输出组件。
show_progressLiteral[‘full’] | Literal[‘minimal’] | Literal[‘hidden’]“full”如果为True,在等待期间显示进度动画。
queuebool | NoneNone如果为True,将请求放入队列中(如果已启用队列)。如果为False,即使已启用队列,也不会将此事件放入队列。如果为None,将使用gradio应用程序的队列设置。
batchboolFalse如果为True,则函数应处理一批输入,即它应接受每个参数的输入值列表。列表的长度应相等(最多为max_batch_size)。函数然后需要返回一个元组的列表(即使只有一个输出组件),其中元组中的每个列表对应于一个输出组件。
max_batch_sizeint4如果从队列调用此方法,则最多可以批处理的输入数量。只在batch=True时相关。
preprocessboolTrue如果为False,将不会在运行“fn”之前运行组件数据的预处理(例如,如果使用Image组件调用此方法,则保留为base64字符串)。
postprocessboolTrue如果为False,将不会在将“fn”输出返回给浏览器之前运行组件数据的后处理。
cancelsdict[str, Any] | list[dict[str, Any]] | NoneNone当此监听器被触发时,要取消的其他事件列表。例如,设置cancels=[click_event]将取消click_event,其中click_event是另一个组件的.click方法的返回值。尚未运行的函数(或正在迭代的生成器)将被取消,但当前正在运行的函数将被允许完成。
everyfloat | NoneNone在客户端连接开启时,每隔一段时间运行此事件。以秒为单位解释。队列必须启用。

clear方法参数 :

参数数据类型默认值描述
fnCallable | Nonerequired要包装接口的函数,通常是机器学习模型的预测函数。函数的每个参数对应于一个输入组件,函数应返回一个值或值的元组,其中元组中的每个元素对应于一个输出组件。
inputsComponent | list[Component] | set[Component] | NoneNone用作输入的Gradio组件的列表。如果函数不接受输入,应该是一个空列表。
outputsComponent | list[Component] | NoneNone用作输出的Gradio组件的列表。如果函数不返回输出,应该是一个空列表。
api_namestr | NoneNone定义此参数将在API文档中公开该端点。
status_trackerNoneNone
scroll_to_outputboolFalse如果为True,将在完成时滚动到输出组件。
show_progressLiteral[‘full’] | Literal[‘minimal’] | Literal[‘hidden’]“full”如果为True,在等待期间显示进度动画。
queuebool | NoneNone如果为True,将请求放入队列中(如果已启用队列)。如果为False,即使已启用队列,也不会将此事件放入队列。如果为None,将使用gradio应用程序的队列设置。
batchboolFalse如果为True,则函数应处理一批输入,即它应接受每个参数的输入值列表。列表的长度应相等(最多为max_batch_size)。函数然后需要返回一个元组的列表(即使只有一个输出组件),其中元组中的每个列表对应于一个输出组件。
max_batch_sizeint4如果从队列调用此方法,则最多可以批处理的输入数量。只在batch=True时相关。
preprocessboolTrue如果为False,将不会在运行“fn”之前运行组件数据的预处理(例如,如果使用Image组件调用此方法,则保留为base64字符串)。
postprocessboolTrue如果为False,将不会在将“fn”输出返回给浏览器之前运行组件数据的后处理。
cancelsdict[str, Any] | list[dict[str, Any]] | NoneNone当此监听器被触发时,要取消的其他事件列表。例如,设置cancels=[click_event]将取消click_event,其中click_event是另一个组件的.click方法的返回值。尚未运行的函数(或正在迭代的生成器)将被取消,但当前正在运行的函数将被允许完成。
everyfloat | NoneNone在客户端连接开启时,每隔一段时间运行此事件。以秒为单位解释。队列必须启用。

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️

👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈

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

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

相关文章

SQL和NoSQL数据库的便捷速查表

在项目成功的过程中选择合适的数据库非常重要。以下是关键要点的总结: •SQL数据库提供结构化数据存储、SQL支持和关系能力。•NoSQL数据库提供灵活性、可扩展性和分布式架构。•专门的数据库,如列存储、图形数据库、空间数据库和时间序列数据库&#xf…

Jetpack compose中实现流畅的Theme选择器动画

Jetpack compose中实现流畅的Theme Picker动画 Jetpack Compose改变了我们在Android上管理主题的方式。它提供了更大的灵活性,使我们能够以更多的方式定义用户界面(UI)。此外,Compose中的动画系统使我们能够轻松创建令人印象深刻和…

如何训练全自动的安卓ai脚本(yolov5 为例) 实现游戏应用自动屏幕识别点击

必要资源 yolo训练方法,调参要点:https://docs.ultralytics.com/ncnn yolov5 示例:https://github.com/nihui/ncnn-android-yolov5在线模型转换:https://convertmodel.com/ 硬件配备 32G 内存, 2060 英伟达显卡 操作步骤 1.准备好数据集&#xff0c…

管理类联考——逻辑——知识篇——形式逻辑——五、联言选言——haimian

联言&选言 考点分析 考点分析 削弱 年度 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023题量6222111 联言 本质定义 联言命题是断定两种或两种以上事物情况同时存在的命题,用“A并且B”表示,逻辑符号为A ∧ B。 若“A ∧ B”为真…

为什么uCOSii的栈顶不再是0x20000000

我将FreeRTOS的工程文件移植到基于uCOSii系统中,发现两个系统生成的栈顶地址不一样,即使栈的大小相同,都是用Keil编译器,差别很大。见下图: Stack_Size EQU 0x00001000; 以前一直使用FreeRTOS系统&#xff0c…

简单易懂:Vue3框架三天速成(一)

前言:学习Vue框架首先需要具备基本的HTML5、CSS3、JavaScript基础,了解基本概念以及用法再来学习Vue会事半功倍! 一、初识Vue Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架。Vue 只关注视图层&a…

【服务器数据恢复】raid5故障导致LUN无法访问的数据恢复案例

服务器数据恢复环境: 一台服务器中有一组由数块SAS硬盘组建的RAID5阵列,阵列中有1块热备盘,上层部署OA以及Oracle数据库。 服务器故障: 该磁盘阵列中有2块硬盘出现故障先后离线,RAID5阵列瘫痪,上层LUN无法…

使用记事本编写第一个GO程序

开发环境: go1.18.3 记事本 先来看一下要编写的第一个hello,world Go程序 package main import "fmt"func main() {/* this is my first Go program*/fmt.Println("hello,world") } 第一行代码 package main定义了域名,你必须在源文…

设计模式->观察者设计模式和订阅者发布者设计模式的区别

设计模式->观察者设计模式和订阅者发布者设计模式的区别 一、先复习一下观察者设计模式的相关定义,优点,以及缺点1.定义观察者模式的三个典型例子 2.优点3.缺点4.观察者设计模式的主要角色5.代码举例完整代码 二、回答问题:观察者设计模式和订阅者发布者设计模式的区别 一、…

【Java-SpringBoot+Vue+MySql】项目开发综合—经验总结

目录 框架: 编程思维: MVC架构: 前端——组件式开发 开发思路梳理: 后端—— 前端—— 效果图 信息列表: 修改用户​编辑 新增用户 删除用户 数据清空 批量上传 框架: 后端:JAVA-SpringBoot2.6、包管理器M…

13.RocketMQ之消息的存储与发送

1. 消息存储 1.1 消息存储 分布式队列因为有高可靠性的要求,所以数据要进行持久化存储。 消息生成者发送消息Broker收到消息,将消息进行持久化,在存储中新增一条记录返回ACK给生产者Broker消息给对应的消费者,然后等待消费者返回A…

Keras-4-深度学习用于计算机视觉-猫狗数据集训练卷积网络

0. 说明: 本篇学习记录主要包括:《Python深度学习》的第5章(深度学习用于计算机视觉)的第2节(在小型数据集上从头开始训练一个卷积神经网络)内容。 相关知识点: 从头训练卷积网络&#xff1b…

AI 绘画用 Stable Diffusion 图生图局部重绘功能给美女换装(这是我能看的嘛)

昨天带大家一起装好了 Stable Diffusion 的环境,今天就来带大家一起体验一下 Stable Diffusion 的局部重绘功能。 没装好环境的可以看上一篇:AI 绘画基于 Kaggle 10 分钟搭建 Stable Diffusion(保姆级教程) Stable Diffusion 的…

可重入,可打断,公平锁,条件变量原理解读

目录 可重入原理 可打断原理 不可打断模式 可打断模式 公平锁实现原理 条件变量实现原理 await 流程 signal 流程 可重入原理 什么是可重入:当线程请求一个由其它线程持有的对象锁时,该线程会阻塞,而当线程请求由自己持有的对象锁…

阿里刚换帅,京东忙换将:新时代号角吹响

6月26日早间,京东物流在港交所发布公告称,京东物流CEO余睿因个人身体原因辞任执行董事、首席执行官及授权代表,原京东产发CEO胡伟将担任京东物流CEO。 同时,据《科创板日报》报道,京东集团将新成立创新零售部&#xf…

【论文笔记】Fast Segment Anything

我说个数:一个月5篇基于Fast Segment Anything的改进的论文就会出现哈哈哈哈。 1.介绍 1.1 挑战 SAM架构的主要部分Transformer(ViT)模型相关的大量计算资源需求,这给其实际部署带来了障碍 1.2 任务解耦 将分段任意任务解耦为…

正确认识:1189194-65-7,DOTA-CH2-Alkynyl (TFA salt),试剂的结构式和CAS

文章关键词:双功能螯合剂,大环配体,标记螯合剂修饰 【产品描述】 DOTA-CH2-Alkynyl (TFA salt)中TFA是一种强酸。它可以质子化任何氨基。盐酸也是这样。在纯化多肽过程中的反相HPLC,有一种技术是阴离子交换。将多肽加载在柱子上&a…

MySql基础教程(三):创建数据表、数据增删改查、删除数据表

MySql基础教程(三):创建数据表、数据增删改查、删除数据表 1、创建数据表 创建MySQL数据表需要以下信息: 表名表字段名定义每个表字段 1.1 语法 下面是创建MySQL数据表的SQL通用语法: CREATE TABLE table_name (column_name column_typ…

无线蓝牙通信有关(NRF2401模块)的功耗,通道频率等

参考: ISM频段 Industrial Scientific Medical,ISM(工业、科学、医疗)频段为国际电信联盟(ITU)《无线电规则》定义的指定无线电频段。 Frequency-Shift Keying 数字调制技术(FSK调制) 将需要…

又是一年毕业季,准备好踏入职场了吗?

文章目录 一、大学时光二、给毕业生的一些建议三、职场中的经验分享四、程序员未来职业规划 一、大学时光 作为一名程序员,大学时光是我职业生涯中最重要的时期之一。这四年的大学,我不仅学到了计算机科学的理论知识,还积累了丰富的编程经验…