Main Content

axtoolbar

创建坐标区工具栏

说明

示例

tb = axtoolbar(buttons) 用仅包含指定按钮的工具栏替换当前坐标区右上角上方显示的默认工具栏。例如,axtoolbar({'pan','restoreview'}) 指定用于平移的按钮和用于还原原始视图的按钮。该函数返回创建的 AxesToolbar 对象。

示例

tb = axtoolbar(ax,buttons) 替换 ax 指定的坐标区或分块图布局(而不是当前坐标区)的工具栏。

tb = axtoolbar 用空工具栏替换当前坐标区的工具栏。

tb = axtoolbar(ax) 用空工具栏替换指定的坐标区或分块图布局(而不是当前坐标区)的工具栏。

tb = axtoolbar(___,Name,Value) 使用一个或多个名称-值参数指定工具栏属性。

[tb,btns] = axtoolbar(___) 还返回创建的工具栏按钮对象,这些对象是 ToolbarStateButtonToolbarPushButtonToolbarDropdown 对象。创建工具栏和工具栏按钮后,可以使用这些对象来修改它们。

示例

全部折叠

创建一个绘图。用自定义工具栏替换标准坐标区工具栏,该自定义工具栏包括用于放大、缩小和还原视图的按钮。返回 AxesToolbar 对象和作为输出参数创建的按钮对象。

plot(magic(5))
[tb,btns] = axtoolbar({'zoomin','zoomout','restoreview'});

Figure with zoom in, zoom out, and restore view buttons in the axes toolbar

创建两个子图,每个子图都有一个自定义工具栏。

首先,创建两个子图并将 Axes 对象赋给变量 ax1ax2。通过将 ax1 指定为 axtoolbar 函数的第一个输入参数,用自定义工具栏替换上部子图的工具栏。然后,替换下部子图的工具栏。将鼠标悬停在每个子图上以查看其工具栏。

ax1 = subplot(2,1,1);
plot(ax1,magic(5))
[tb1,btns1] = axtoolbar(ax1,{'zoomin','zoomout','restoreview'});

ax2 = subplot(2,1,2);
plot(ax2,magic(5))
[tb2,btns2] = axtoolbar(ax2,{'pan','datacursor'});

Figure with two plots. The bottom plot has data tip and pan buttons in the axes toolbar.

创建具有一个坐标区工具栏的分块图布局。

首先,创建一个 2×1 布局,并在每个图块中显示不同的图。然后,为分块图布局创建一个自定义坐标区工具栏。将鼠标悬停在布局上以显示该工具栏。

t = tiledlayout(2,1);
nexttile
plot(magic(5));
nexttile
plot(magic(5));

tb = axtoolbar(t,{'zoomin','zoomout','restoreview'});

Figure with two plots. The top plot has zoom in, zoom out, and restore view buttons in the axes toolbar.

输入参数

全部折叠

目标坐标区,指定为下列值之一:

  • Axes 对象 - 为指定的坐标区组创建自定义坐标区工具栏。

  • TiledChartLayout 对象 - 创建一个适用于指定分块图布局中所有坐标区的坐标区工具栏。

工具栏按钮,指定为 'default',用于默认按钮组或包含下表中列出的一个或多个按钮名称的元胞数组。无论您指定的按钮顺序如何,按钮都会在工具栏上以标准顺序显示。每个按钮只能在工具栏中出现一次。

按钮名称图标描述
'export'Export icon

显示导出选项菜单。

'brush'Data brushing icon切换到数据刷亮模式。
'datacursor'Data cursor icon切换到数据游标模式。
'rotate'Rotate icon切换到旋转模式。
'pan'Pan icon切换到平移模式。
'zoomin'Zoom in icon切换到放大模式。
'zoomout'Zoom out icon切换到缩小模式。
'restoreview'Restore view icon还原坐标区或分块图布局的原始视图。

将鼠标悬停在 'export' 按钮上会显示下拉菜单,其中包含用于导出坐标区或分块图布局内容的选项:

  • Save as icon:将内容保存为一个精确裁剪的图像或 PDF。

  • Copy as image icon:将内容复制为图像。

  • Copy as vector graphic icon:将内容复制为向量图。

示例: axtoolbar({'zoomin','zoomout','restoreview'})

名称-值参数

将可选的参数对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参数名称,Value 是对应的值。名称-值参数必须出现在其他参数之后,但参数对组的顺序无关紧要。

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: axtoolbar({'zoomin','zoomout'},'SelectionChangedFcn',@mycallback)

注意

此处所列的属性只是一部分。有关完整列表,请参阅 AxesToolbar 属性

所选内容更改后的回调,指定为下列值之一:

  • 函数句柄。

  • 第一个元素是函数句柄的元胞数组。元胞数组中的后续元素是传递到回调函数的参数。

  • 包含有效 MATLAB® 表达式的字符向量(不推荐)。MATLAB 在基础工作区计算此表达式。

点击状态按钮时将执行此回调。如果以编程方式更改状态按钮的 Value 属性,将不会执行此回调。

此回调函数可以访问有关与按钮的交互的特定信息。MATLAB 将 SelectionChangedEventData 对象中的此信息作为第二个参数传递给回调函数。您可以使用圆点表示法查询对象属性。例如,event.Selection 返回当前选择的按钮。SelectionChangedEventData 对象不可用于指定为字符向量的回调函数。

下表列出了 SelectionChangedEventData 对象的属性。

属性

描述

Axes

与工具栏关联的 Axes 对象数组

Selection

当前选择的按钮

PreviousSelection

先前选择的按钮

Source

AxesToolbar 对象

EventName

'SelectionChanged'

可见性状态,指定为 "on""off",或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 "on" 等效于 true"off" 等效于 false。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState 类型的 on/off 逻辑值。

  • "on" - 显示对象。

  • "off" - 隐藏对象而不删除它。您仍然可以访问不可见对象的属性。

输出参数

全部折叠

工具栏,以 AxesToolbar 对象形式返回。创建工具栏后,可使用 tb 修改工具栏。有关属性列表,请参阅 AxesToolbar 属性

工具栏按钮,以包含一个或多个 ToolbarPushButtonToolbarStateButtonToolbarDropdown 对象的图形数组形式返回。在创建按钮后,可使用 btns 数组中的元素修改按钮。有关属性列表,请参阅 ToolbarStateButton 属性ToolbarPushButton 属性ToolbarDropdown 属性

局限性

  • 实时编辑器的图窗中不会显示自定义工具栏。要查看自定义工具栏,请点击图窗右上角的 Open in Figure Window 按钮以在单独的图窗窗口中打开图窗。

版本历史记录

在 R2018b 中推出