使用Gradio库创建交互式散点图


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

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

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

请添加图片描述

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

使用Gradio库创建交互式散点图

Gradio是一个强大的库,可以帮助我们快速创建交互式的数据可视化应用程序。其中的ScatterPlot模块是Gradio提供的一个组件,用于创建散点图。本文将介绍ScatterPlot模块的用法以及其change和clear两个方法。

散点图是一种常用的数据可视化方式,可以直观地展示数据的分布情况。Gradio库的ScatterPlot模块提供了一个方便易用的接口,可以快速创建交互式的散点图。

ScatterPlot模块的初始化参数非常丰富,可以通过设置这些参数来定制散点图的外观和行为。其中一些重要的参数包括:

  • value:用于显示在散点图中的数据,可以是一个pandas DataFrame对象或一个可调用对象。
  • x和y:分别对应散点图的x轴和y轴的数据列。
  • color:用于确定散点的颜色的列名。
  • size:用于确定散点的大小的列名。
  • title:散点图的标题。
  • tooltip:当用户将鼠标悬停在散点上时显示的提示信息。

除了这些基本参数外,ScatterPlot模块还提供了许多其他参数,用于设置坐标轴标题、图例标题、图例位置、图表大小等等。

在使用ScatterPlot模块时,我们可以通过change方法和clear方法来响应散点图的数值变化和清除操作。

change方法是一个监听器,当散点图的数值发生变化时被触发。我们可以将一个函数传递给change方法,这个函数通常是一个机器学习模型的预测函数。change方法会根据函数的参数与输入组件进行匹配,并将函数的返回值更新到输出组件上。

clear方法是另一个监听器,当用户点击散点图上的清除按钮时被触发。我们可以将一个函数传递给clear方法,这个函数会在用户清除散点图时执行一些操作,比如重置模型的状态或清空输出组件的值。

使用Gradio库创建交互式散点图非常简单。我们可以通过设置ScatterPlot模块的各种参数来自定义散点图的外观和行为,然后将其与其他组件组合在一起,形成一个完整的交互界面。

参数详解

下面是关于ScatterPlot模块参数以及change和clear方法的整理表格:

参数数据类型默认值描述
valuepd.DataFrame | Callable | NoneNone包含要在散点图中显示的数据的 pandas DataFrame 或可调用对象。如果是可调用对象,当应用程序加载时将调用该函数以设置组件的初始值。
xstr | NoneNone对应于 x 轴的列。
ystr | NoneNone对应于 y 轴的列。
colorstr | NoneNone用于确定点颜色的列。如果该列包含数字数据,则 gradio 将对该列数据进行插值,以使小值对应浅色,大值对应深色。
sizestr | NoneNone用于确定点大小的列。应包含数字数据,以便 gradio 可以将数据映射到点大小。
shapestr | NoneNone用于确定点形状的列。应包含分类数据。gradio 将每个唯一值映射到不同的形状。
titlestr | NoneNone在图表顶部显示的标题。
tooltiplist[str] | str | NoneNone当用户悬停在图上的点上时,在工具提示中显示的列(或列的列表)。
x_titlestr | NoneNone给 x 轴指定的标题。默认情况下,使用 x 参数的值。
y_titlestr | NoneNone给 y 轴指定的标题。默认情况下,使用 y 参数的值。
color_legend_titlestr | NoneNone给颜色图例指定的标题。默认情况下,使用 color 参数的值。
size_legend_titlestr | NoneNone给大小图例指定的标题。默认情况下,使用 size 参数的值。
shape_legend_titlestr | NoneNone给形状图例指定的标题。默认情况下,使用 shape 参数的值。
color_legend_positionLiteral[‘left’, ‘right’, ‘top’, ‘bottom’, ‘top-left’, ‘top-right’, ‘bottom-left’, ‘bottom-right’, ‘none’] | NoneNone颜色图例的位置。如果传递字符串值 ‘none’,则省略此图例。有关其他有效位置值,请参见:https://vega.github.io/vega/docs/legends/#orientation。
size_legend_positionLiteral[‘left’, ‘right’, ‘top’, ‘bottom’, ‘top-left’, ‘top-right’, ‘bottom-left’, ‘bottom-right’, ‘none’] | NoneNone大小图例的位置。如果传递字符串值 ‘none’,则省略此图例。有关其他有效位置值,请参见:https://vega.github.io/vega/docs/legends/#orientation。
shape_legend_positionLiteral[‘left’, ‘right’, ‘top’, ‘bottom’, ‘top-left’, ‘top-right’, ‘bottom-left’, ‘bottom-right’, ‘none’] | NoneNone形状图例的位置。如果传递字符串值 ‘none’,则省略此图例。有关其他有效位置值,请参见:https://vega.github.io/vega/docs/legends/#orientation。
heightint | NoneNone图的高度(以像素为单位)。
widthint | NoneNone图的宽度(以像素为单位)。
x_limlist[int | float] | NoneNone包含 x 轴限制的元组或列表,格式为 [x_min, x_max]。
y_limlist[int | float] | NoneNone包含 y 轴限制的元组或列表,格式为 [y_min, y_max]。
captionstr | NoneNone(可选)显示在图下方的说明。
interactivebool | NoneTrue用户是否可以通过鼠标或触控板进行平移或缩放与图的交互。
labelstr | NoneNone(可选)显示在图左上角的标签。
everyfloat | NoneNone如果 value 是可调用对象,则在客户端连接打开时每隔 ‘every’ 秒运行该函数。否则不起作用。队列必须启用。事件可通过此组件的 .load_event 属性访问(例如取消该事件)。
show_labelboolTrue是否显示标签。
containerboolTrue是否显示容器。
scaleint | NoneNone比例。
min_widthint160最小宽度。
visibleboolTrue图是否可见。
elem_idstr | NoneNone可选字符串,用作 HTML DOM 中此组件的 id。可用于指定 CSS 样式。
elem_classeslist[str] | str | NoneNone可选字符串列表,用作 HTML DOM 中此组件的类。可用于指定 CSS 样式。

change和select方法参数

下面是关于change和clear方法参数的整理表格:

参数数据类型默认值描述
fnCallable or None封装为接口的函数。通常是机器学习模型的预测函数。函数的每个参数对应一个输入组件,函数应返回单个值或一个元组,其中每个元素对应一个输出组件。
inputsComponent, list[Component], set[Component] or None用作输入的Gradio组件的列表。如果函数不需要输入,应将其设置为空列表。
outputsComponent, list[Component] or None用作输出的Gradio组件的列表。如果函数不返回输出,应将其设置为空列表。
api_namestr, None or Literal[False]None定义端点在API文档中的显示方式。可以是字符串、None或False。如果为False,则端点不会显示在API文档中。如果设置为None,则端点将以无名称的端点显示在API文档中,尽管此行为将在Gradio 4.0中更改。如果设置为字符串,则端点将以给定名称显示在API文档中。
status_trackerNone
scroll_to_outputboolFalse如果为True,在完成时将滚动到输出组件。
show_progressLiteral[‘full’, ‘minimal’, ‘hidden’]“full”如果为True,在等待期间显示进度动画。
queuebool or 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]] or NoneNone要在此监听器触发时取消的其他事件列表。例如,设置cancels=[click_event]将取消click_event,其中click_event是另一个组件的.click方法的返回值。尚未运行的函数(或正在迭代的生成器)将被取消,但正在运行的函数将被允许完成。
everyfloat or NoneNone在客户端连接打开时,每隔’every’秒运行此事件。以秒为单位解释。队列必须启用。

本文介绍了Gradio库的ScatterPlot模块及其change和clear方法。通过使用这些功能强大的工具,我们可以轻松创建出交互式的散点图,并根据用户的操作进行相应的数据处理和展示。使用Gradio库,数据可视化变得简单而又有趣。


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

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

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

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

相关文章

Javaee技术目的总结

一.前节回顾 在前一节中,我们了解了: 1.将中央控制器中的Action容器,变成可控制! 2.针对于反射调用业务代码,最终页面跳转 3.jsp页面参数传递后台的代码优化字段太多有影响! 二.项目部署前期准备工作 1.项目运行环境…

分布式运用——监控平台 Zabbix

分布式运用——监控平台 Zabbix 一、Zabbix概述1.监控平台的作用2.Zabbix 是什么?3.Zabbix的特点4.Zabbix的使用场景5.Zabbix 监控原理6.Zabbix 6.0 新特性7.Zabbix 6.0 功能组件①.Zabbix Server②.数据库③.Web 界面④.Zabbix Agent⑤.Zabbix Proxy⑥.Java Gatewa…

爬虫反反爬

目录 为什么要反爬? 经常被反爬的主要人群 常见的反爬策略 通过headers字段来反爬 通过headers中的User-Agent字段来反爬 通过referer字段或者是其他字段来反爬 通过cookie来反爬 通过请求参数来反爬 通过从html静态文件中获取请求数据(github登录数据) 通…

Kafka入门, 消费者组案例(十九)

pom 文件 <dependencies><dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-clients</artifactId><version>3.0.0</version></dependency></dependencies>独立消费者案例&#xff08;订阅主语&a…

nginx四层转发应用

默认使用yum安装的nginx是没有额外安装的动态模块的&#xff0c;需要自己额外安装 ls /usr/lib64/nginx/modules/ 若是不安装stream模块&#xff0c;直接在nginx的配置文件中调用stream模块&#xff0c;重载配置文件的时候会报错识别不到stream功能 安装stream模块 yum insta…

匿名管道的使用示例

目录 整体框架 通信步骤 创建管道 ​编辑创建子进程&关闭相应的fd ​编辑 进程间通信 父子进程通信之间四种场景 实现父亲读&#xff0c;孩子写的进程间通信 管道通信的使用场景样例实现 整体框架 通信步骤 创建管道 pipe的参数为输出型参数&#xff0c;返回读写端…

如何提升问卷数据的有效性?

问卷调查法是收集数据的宝贵工具&#xff0c;可以为商业、社会科学和医疗保健等众多领域的决策过程提供真实可靠的数据信息。然而&#xff0c;问卷数据的准确性和可靠性是影响最终结论的关键因素&#xff0c;而他们取决于问卷设计和数据收集过程的质量。在本文中&#xff0c;我…

zabbix proxy的配置及zabbix实现高可用(监控 windows,java应用,SNMP等)

目录 zabbix proxy 分布式代理服务器部署zabbix proxy 代理服务器部署 Zabbix 高可用集群Zabbix 监控 Windows 系统Zabbix 监控 java 应用Zabbix 监控 SNMP zabbix proxy 分布式代理服务器 zabbix 分布式代理服务器&#xff0c;可以代替zabbix server 采集性能和可用性数据。z…

nginx七层代理和四层转发的理解

先来理解一下osi七层模型 应用层 应用层是ISO七层模型的最高层&#xff0c;它直接与用户和应用程序交互&#xff0c;提供用户与网络的接口。它包括各种应用协议&#xff0c;如HTTP、FTP、SMTP等&#xff0c;用于实现特定应用的功能和通信表示层 表示层…

学生成绩分析项目

数据采集 导入必要的库 import pandas as pd import matplotlib.pyplot as plt import seaborn as sns加载数据集 df pd.read_csv(D:\\桌面\\数据\\student_marks.csv)显示数据框的前几行 # 显示数据框的形状 print("Shape of the dataframe:", df.shape)#显示…

【运维】GitLab相关配置优化等

默认 Git 设置 http post 的缓存为 1MB&#xff0c;使用命令将git的缓存设为500M&#xff0c;重新配置一下postBuffer值 git config --global http.postBuffer 524288000 解决方法2&#xff1a;直接修改config参数&#xff0c; windows: ./git/config中&#xff0c;加入以下…

Freertos-mini智能音箱项目---IO扩展芯片PCA9557

项目上用到的ESP32S3芯片引脚太少&#xff0c;选择了PCA9557扩展IO&#xff0c;通过一路i2c可以扩展出8个IO。这款芯片没有中断输入&#xff0c;所以更适合做扩展输出引脚用&#xff0c;内部寄存器也比较少&#xff0c;只有4个&#xff0c;使用起来很容易。 输入寄存器 输出寄存…