使用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方法的整理表格:

参数 数据类型 默认值 描述
value pd.DataFrame | Callable | None None 包含要在散点图中显示的数据的 pandas DataFrame 或可调用对象。如果是可调用对象,当应用程序加载时将调用该函数以设置组件的初始值。
x str | None None 对应于 x 轴的列。
y str | None None 对应于 y 轴的列。
color str | None None 用于确定点颜色的列。如果该列包含数字数据,则 gradio 将对该列数据进行插值,以使小值对应浅色,大值对应深色。
size str | None None 用于确定点大小的列。应包含数字数据,以便 gradio 可以将数据映射到点大小。
shape str | None None 用于确定点形状的列。应包含分类数据。gradio 将每个唯一值映射到不同的形状。
title str | None None 在图表顶部显示的标题。
tooltip list[str] | str | None None 当用户悬停在图上的点上时,在工具提示中显示的列(或列的列表)。
x_title str | None None 给 x 轴指定的标题。默认情况下,使用 x 参数的值。
y_title str | None None 给 y 轴指定的标题。默认情况下,使用 y 参数的值。
color_legend_title str | None None 给颜色图例指定的标题。默认情况下,使用 color 参数的值。
size_legend_title str | None None 给大小图例指定的标题。默认情况下,使用 size 参数的值。
shape_legend_title str | None None 给形状图例指定的标题。默认情况下,使用 shape 参数的值。
color_legend_position Literal[‘left’, ‘right’, ‘top’, ‘bottom’, ‘top-left’, ‘top-right’, ‘bottom-left’, ‘bottom-right’, ‘none’] | None None 颜色图例的位置。如果传递字符串值 ‘none’,则省略此图例。有关其他有效位置值,请参见:https://vega.github.io/vega/docs/legends/#orientation。
size_legend_position Literal[‘left’, ‘right’, ‘top’, ‘bottom’, ‘top-left’, ‘top-right’, ‘bottom-left’, ‘bottom-right’, ‘none’] | None None 大小图例的位置。如果传递字符串值 ‘none’,则省略此图例。有关其他有效位置值,请参见:https://vega.github.io/vega/docs/legends/#orientation。
shape_legend_position Literal[‘left’, ‘right’, ‘top’, ‘bottom’, ‘top-left’, ‘top-right’, ‘bottom-left’, ‘bottom-right’, ‘none’] | None None 形状图例的位置。如果传递字符串值 ‘none’,则省略此图例。有关其他有效位置值,请参见:https://vega.github.io/vega/docs/legends/#orientation。
height int | None None 图的高度(以像素为单位)。
width int | None None 图的宽度(以像素为单位)。
x_lim list[int | float] | None None 包含 x 轴限制的元组或列表,格式为 [x_min, x_max]。
y_lim list[int | float] | None None 包含 y 轴限制的元组或列表,格式为 [y_min, y_max]。
caption str | None None (可选)显示在图下方的说明。
interactive bool | None True 用户是否可以通过鼠标或触控板进行平移或缩放与图的交互。
label str | None None (可选)显示在图左上角的标签。
every float | None None 如果 value 是可调用对象,则在客户端连接打开时每隔 ‘every’ 秒运行该函数。否则不起作用。队列必须启用。事件可通过此组件的 .load_event 属性访问(例如取消该事件)。
show_label bool True 是否显示标签。
container bool True 是否显示容器。
scale int | None None 比例。
min_width int 160 最小宽度。
visible bool True 图是否可见。
elem_id str | None None 可选字符串,用作 HTML DOM 中此组件的 id。可用于指定 CSS 样式。
elem_classes list[str] | str | None None 可选字符串列表,用作 HTML DOM 中此组件的类。可用于指定 CSS 样式。

change和select方法参数

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

参数 数据类型 默认值 描述
fn Callable or None 封装为接口的函数。通常是机器学习模型的预测函数。函数的每个参数对应一个输入组件,函数应返回单个值或一个元组,其中每个元素对应一个输出组件。
inputs Component, list[Component], set[Component] or None 用作输入的Gradio组件的列表。如果函数不需要输入,应将其设置为空列表。
outputs Component, list[Component] or None 用作输出的Gradio组件的列表。如果函数不返回输出,应将其设置为空列表。
api_name str, None or Literal[False] None 定义端点在API文档中的显示方式。可以是字符串、None或False。如果为False,则端点不会显示在API文档中。如果设置为None,则端点将以无名称的端点显示在API文档中,尽管此行为将在Gradio 4.0中更改。如果设置为字符串,则端点将以给定名称显示在API文档中。
status_tracker None
scroll_to_output bool False 如果为True,在完成时将滚动到输出组件。
show_progress Literal[‘full’, ‘minimal’, ‘hidden’] “full” 如果为True,在等待期间显示进度动画。
queue bool or None None 如果为True,将请求放入队列中(如果队列已启用)。如果为False,即使启用了队列,也不会将此事件放入队列。如果为None,则使用gradio应用程序的队列设置。
batch bool False 如果为True,则函数应处理一批输入,这意味着它应接受每个参数的输入值列表。列表应具有相等的长度(最多为max_batch_size的长度)。然后,函数必须返回一个元组列表(即使只有一个输出组件),其中元组中的每个列表对应一个输出组件。
max_batch_size int 4 如果从队列中调用此方法,则最多将输入批处理到一起的最大数量(仅适用于batch=True)。
preprocess bool True 如果为False,则在运行’fn’之前不会对组件数据进行预处理(例如,如果使用Image组件调用此方法,将其保留为base64字符串)。
postprocess bool True 如果为False,则在将’fn’输出返回给浏览器之前不会对组件数据进行后处理。
cancels dict[str, Any], list[dict[str, Any]] or None None 要在此监听器触发时取消的其他事件列表。例如,设置cancels=[click_event]将取消click_event,其中click_event是另一个组件的.click方法的返回值。尚未运行的函数(或正在迭代的生成器)将被取消,但正在运行的函数将被允许完成。
every float or None None 在客户端连接打开时,每隔’every’秒运行此事件。以秒为单位解释。队列必须启用。

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


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

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

原文地址:https://blog.csdn.net/qq_41667743/article/details/131627320

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年07月10日 05:02
不同路径(力扣)动态规划 JAVA
下一篇 2023年07月10日 05:04