快捷搜索:  汽车  科技

matlab图形处理程序解析(MATLAB快速入门官方说明)

matlab图形处理程序解析(MATLAB快速入门官方说明)轴 - 包含表示数据的对象的坐标系图窗 - 包含轴、工具栏、菜单等的窗口。例如,以下语句使用变量 y 中的数据创建条形图,并设置关于条形显示方式的属性:y = [75 91 105 123.5 131 150 179 203 226 249 281.5]; bar(y 'FaceColor' 'green' 'EdgeColor' 'black' 'LineWidth' 1.5)常见图形对象当调用函数以便创建图形时,MATLAB 会创建图形对象的层次结构。例如,调用 plot 函数会创建下列图形对象:

处理图形对象

图形对象

图形对象是用于显示图形的基本元素。这些对象按层次结构组织,如下图所示。

matlab图形处理程序解析(MATLAB快速入门官方说明)(1)

当调用绘图函数时,MATLAB® 使用各种图形对象(例如,图窗窗口、轴、线条、文本等)创建图形。每个对象都具有一组固定的属性,您可以使用这些属性控制图形的行为和外观。

例如,以下语句使用变量 y 中的数据创建条形图,并设置关于条形显示方式的属性:

y = [75 91 105 123.5 131 150 179 203 226 249 281.5]; bar(y 'FaceColor' 'green' 'EdgeColor' 'black' 'LineWidth' 1.5)

常见图形对象

当调用函数以便创建图形时,MATLAB 会创建图形对象的层次结构。例如,调用 plot 函数会创建下列图形对象:

  • 图窗 - 包含轴、工具栏、菜单等的窗口。

  • 轴 - 包含表示数据的对象的坐标系

  • 线条 - 代表传递至 plot 函数的数据值的线条。

  • 文本 - 用于轴刻度线和可选标题及注释的标签。

不同类型的图形使用不同对象来表示数据。由于存在许多种图形,因此也存在许多数据对象类型。其中一些用于一般用途,例如线条和矩形,还有一些是用于高度专业的用途,例如误差条、颜色栏和图例。

用于处理对象的函数

此表列出了处理对象时常用的函数。

函数

用途

allchild

查找指定对象的所有子级。

ancestor

查找图形对象的父级。

copyobj

复制图形对象。

delete

删除对象。

findall

查找所有图形对象(包括隐藏句柄)。

findobj

查找具有指定属性值的对象的句柄。

gca

返回当前轴的句柄。

gcf

返回当前图窗的句柄。

gco

返回当前对象的句柄。

get

查询对象的属性的值。

ishandle

如果值是有效对象句柄,则为 True。

set

设置对象的属性的值。

传递参数

可定义专用绘图函数以简化自定义图形的创建过程。通过定义函数,可以像 MATLAB 绘图函数一样传递参数。

下面的示例显示了一个 MATLAB 函数,该函数在输入参数 x 指定的范围中计算数学表达式,然后绘制结果。第二次调用 plot 函数会将结果的 mean 值绘制为红线。

该函数基于计算值修改 y 轴刻度。加入轴标签和标题后,即完成了图形自定义。

function plotFunc(x) y = 1.5*cos(x) 6*exp(-.1*x) exp(.07*x).*sin(3*x); ym = mean(y); hfig = figure('Name' 'Function and Mean'); hax = axes('Parent' hfig); plot(hax x y) hold on plot(hax [min(x) max(x)] [ym ym] 'Color' 'red') hold off ylab = hax.YTick; new_ylab = sort([ylab ym]); hax.YTick = new_ylab; title ('y = 1.5cos(x) 6e^{-0.1x} e^{0.07x}sin(3x)') xlabel('X Axis') ylabel('Y Axis')end

定义输入参数的值,并调用此函数。

x = -10:.005:40; plotFunc(x)

matlab图形处理程序解析(MATLAB快速入门官方说明)(2)

查找现有对象的句柄

findobj 函数可用于通过搜索具有特定属性值的对象来获取图形对象的句柄。使用 findobj,您可以指定任何属性组合的值,这样可以方便地从多个对象中选取一个对象。此外,findobj 还可识别正则表达式。

查找特定类型的所有对象

由于所有对象都具有标识对象类型的 Type 属性,因此可以查找特定对象类型的所有匹配项的句柄。例如,

h = findobj('Type' 'patch');

查找所有补片对象的句柄。

查找具有特定属性的对象

您可以指定多个属性以便缩小搜索范围。例如,

plot(rand(5) 'r:') h = findobj('Type' 'line' 'Color' 'r' 'LineStyle' ':');

查找所有红色点线的句柄。

h = 5x1 Line array: Line Line Line Line Line

限制搜索范围

通过将起始图窗或轴的句柄作为传递的第一个参数,您可以在对象层次结构中指定起点。例如,

h = findobj(gca 'Type' 'text' 'String' '\pi/2');

仅在当前坐标区中查找 π/2。

猜您喜欢: