这个例子展示了如何从MATLAB图中提取数据。
如果图形存储在一个文件中,例如'example。,然后使用openfig打开图文件。将Figure对象赋值给变量fig。
无花果= openfig (“example.fig”);
如果图形已经打开,则使用'gcf'访问figure对象,并将其赋值给变量'fig'。
有几种方法可以访问绘制的图形对象的数据。你可以使用Children属性,也可以使用'findobj'。
使用儿童属性
通过Children属性访问绘制的图形对象。Axes对象是图形的子对象。绘制的图形对象通常是Axes对象的子对象。
axObjs = fig.Children
dataObjs = axObjs。孩子们
命令窗口中显示的'dataObjs'数组表示轴中的图形对象的类型。不同的图形对象存储数据的方式不同。例如,Line对象将数据存储在'XData', 'YData'和'ZData'属性中。如果'dataObjs'中的第一个元素是Line对象,那么使用下面的代码访问它的数据。
x = dataObjs(1)。XData
y = dataObjs(1)。YData
z = dataObjs(1)。ZData
如果图形包含其他类型的图形对象,则使用适当的属性来访问数据。有关图形对象及其属性的列表,请参见:
使用findobj函数
或者,您可以在具有特定data属性的图形中找到所有图形对象。例如,查找所有具有“YData”属性的图形对象。然后访问第一个对象的“YData”值。
dataObjs = findobj(图,“属性”,“YData”)
日元= dataObjs(1)。YData