matplotlib.widgets.RadioButtons#

class matplotlib.widgets.RadioButtons(ax, labels, active=0, activecolor=None, *, layout=None, useblit=True, label_props=None, radio_props=None)[源代码]#

基类:_Buttons

GUI 无关的单选按钮。

为了保持按钮的响应性,必须保留对该对象的引用。

使用 on_clicked 方法连接到 RadioButtons。

属性:
axAxes

组件的父级 Axes 对象。

activecolor颜色

选中按钮的颜色。

labels列表,元素为 Text

按钮标签。

value_selectedstr

当前选中按钮的标签文本。

index_selectedint

选中按钮的索引。

将单选按钮添加到 Axes 中。

参数:
axAxes

要添加按钮的 Axes。

labelsstr 列表

按钮标签。

activeint

初始选中按钮的索引。

activecolor颜色

选中按钮的颜色。如果未在此处或 radio_props 中指定,则默认为 'blue'

layoutNone 或 "vertical" 或 "horizontal" 或 (int, int),默认:None

单选按钮的布局。选项包括:

  • None:使用传统的垂直布局(默认)。

  • "vertical":将按钮排列成单列,并根据文本宽度进行动态定位。

  • "horizontal":将按钮排列成单行,并根据文本宽度进行动态定位。

  • (rows, cols) 元组:将按钮排列成指定行数和列数的网格。按钮从左到右、从上到下放置,并进行动态定位。

"vertical"、"horizontal" 和 (rows, cols) 布局选项会创建 mtext.Text 对象来确定精确的文本尺寸,然后将其添加到 Axes 中。这通常是可以的,但可能会导致副作用并产生轻微的性能影响。因此,默认的 None 值避免了此操作。

于版本 3.11 新增。

useblitbool, 默认: True

如果后端支持,使用位块传输(blitting)以加快绘图速度。详见教程 通过位块传输实现更快的渲染

版本 3.7 新增。

label_props列表字典,可选

用于标签的 Text 属性字典。每个字典值应至少包含一个元素的列表。如果列表长度为 M,其值将循环使用,使得第 N 个标签获得第 (N mod M) 个属性。

版本 3.7 新增。

radio_propsdict,可选

用于单选按钮的散点 Collection 属性字典。默认为(标签字体大小 / 2)** 2 大小、黑色边缘颜色,以及 activecolor 作为填充颜色(激活时)。

注意

如果 radio_props 中提供了填充颜色(facecolor),它将覆盖 activecolor。这可用于为每个按钮提供激活颜色。

版本 3.7 新增。

property activecolor#
clear()[源代码]#

将活动按钮重置为最初激活的按钮。

set_active(index)[源代码]#

选择编号为 index 的按钮。

如果 eventson 为 True,则会触发回调。

参数:
index整数

要激活的按钮索引。

引发:
ValueError

如果索引无效。

set_radio_props(props)[源代码]#

设置 Text 标签的属性。

版本 3.7 新增。

参数:
propsdict

用于单选按钮的 Collection 属性字典。

使用 matplotlib.widgets.RadioButtons 的示例#

单选按钮

单选按钮

单选按钮网格

单选按钮网格