文档

linkdata

当变量变化时自动更新图表

语法

linkdata上
linkdata掉
linkdata
linkdata (figure_handle…)
linkobj = linkdata (figure_handle)

描述

linkdata上为当前图形打开数据链接。

linkdata掉关闭数据链接。

linkdata它自己切换数据链接的状态。

linkdata (figure_handle…)将函数应用于指定的图形句柄。

linkobj = linkdata (figure_handle)返回一个linkdata对象为指定的数字。对象有一个只读属性,启用,它被设置为两者之一“上”“关闭”,这取决于图的链接状态。

数据链接将图窗口中的图形通过基函数或函数的工作空间中的变量连接到它们XDataSourceYDataSource,ZDataSource属性。当你打开一个图形的数据链接,MATLAB®方法将当前(基调用方或函数调用方)工作区中的变量与XDataYData,ZData受影响图形中图形的属性,以尝试匹配它们。当找到匹配项时,相应的XDataSourceYDataSource和/或ZDataSource为图设置匹配的变量。

对链接变量的任何后续更改都将反映在使用它们作为数据源的图中,如果链接变量显示在variables编辑器中,那么也会反映在variables编辑器中。相反,在命令行、Variables编辑器或Brush工具中对标绘数据值所做的任何更改(例如删除或替换数据点),都会立即反映在与数据点相连的工作区变量中。

当一个包含图形的图被链接并将任何变量标识为XDataSourceYDataSource和/或ZDataSource在工作区中更改它的值,在工作区中显示它的所有图形和其他链接的图形都会自动更新。此操作相当于自动调用refreshdata函数在相应的图形上的一个变量变化。

链接图形窗口通过窗口顶部的Linked Plot信息栏的外观来标识它们自己。当linkdata对于图形,将删除Linked Plot信息栏。如果linkdata不能在链接图中明确地标识一个图的数据源,它通过linked Plot信息栏报告这一情况,这给了用户一个识别数据源的机会。信息栏显示警告图标和提示信息。没有图形具有数据源同时也提示修复它.点击修复它打开“指定数据源属性”对话框,以标识图中使用的变量名和数据源范围。

例子

示例1

创建两个变量,将它们绘制成面积图,并将图与它们连接起来:

x = 1:20;3 y =兰德(20日);区(x, y) linkdata

更改链接变量的值y在工作区中:

: y(10日)= 0;
区域图立即更新。

示例2

根据返回的值,删除未链接的图形linkdata对象:

无花果=图;ld = linkdata(图)
ld = graphics.linkdata
如果比较字符串(ld。启用,“关闭”删除(图)结束

示例3

如果绘图函数可以显示复杂变量,则可以将这些绘图链接起来。为此,您需要将数据源描述为表达式,以分离变量的实部和虚部。例如,

20) x = eig (randn(20日);whos名称大小字节类属性x 20x1 320 double complex
得到一个复向量。您可以使用情节将实部显示为x虚部是y,然后将图链接到变量:
情节(x) linkdata
然而,linkdata不能明确地标识图的数据源,必须通过键入来告诉它真正的(x)图像放大(x)到单击时显示的“指定数据源属性”对话框修复它在链接图信息栏中。

为了避免在对话框中输入数据源名称,你可以在绘图时指定它们:

阴谋(x,“XDataSource”,“真正的(x)”,“YDataSource”、“图像放大(x)”)

的值x通过编程或手动方式,情节会相应地更新。

请注意

虽然可以在复杂数据的链接图上使用数据涂刷,但涂刷标记只出现在正在涂刷的图中,而不会出现在其他图中或Variables编辑器中。这是因为函数调用,如真正的(x)图像放大(x),当涂刷图形数据时,不会解释指定为数据源的数据。

提示

你可以链接的变量类型

您可以使用linkdata将图与任意类的标量、向量和矩阵数值变量(包括复杂的,如果绘图函数可以画出它)-基本上任何数据isnumeric=真正的.看到示例3有关链接复合变量的指令。还可以将图链接到结构中的数字字段。你可以指定MATLAB表达式作为数据源,例如,sqrt (y) + 1

恢复中断的链接

控件中的变量无法刷新链接图上的数据XDataSourceYDataSource,或ZDataSource属性在求值时与当前工作区中的内容不兼容,因此对应的XDataYData,或ZData无法回应。图形中对象的可视外观不会受到此类故障的影响,因此图形对象不会显示断开的链接。取而代之的是一个警告图标和消息没有链接出现在“链接图”信息栏上编辑按钮,打开“指定数据源”对话框。

连接快速变化的数据

linkdata缓冲区更新数据并以大约半秒的时间间隔将它们发送到绘图中。这使得数据链接不适合对数据值进行平滑的动画更改,除非它们在强制每秒执行两次或更少的循环中更新。

缓冲链接更新的一个结果是linkdata可能检测不到它监视的数据流中的变化。如果你正在运行一个使用assigninevalin要更新工作空间变量,linkdata有时可能无法处理更改值而不更改工作区变量的大小和类的更新。这种失败只会在函数本身更新图表时发生。

连接刷图

如果将数据源链接到已刷过的图形,则它们的刷痕可以更改或消失。这是因为这些图中的工作空间变量现在规定了哪些(如果有的话)观察值被刷过,取代了应用于图形数据的任何刷过的注释(YData等)。有关详细信息,请参见数据链接如何影响数据刷单参考页面。

这个话题有用吗?