zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Matlab中图形对象控制的功能

控制MATLAB对象 功能 图形
2023-09-11 14:14:48 时间

目录 

图形对象的用途

图窗

坐标区

坐标区控制的图形功能

表示数据的对象

数据对象控制的图形功能

高级函数与低级函数

组对象

注释对象


图形对象的用途

        图形对象以直观而有意义的方式表示数据,如线图、图像、文本以及这些对象的组合。图形对象作为其他对象的容器或数据的表示。

  • 容器 - 图窗显示所有图形对象。通过面板和组可将一组对象视作一个整体进行某些操作。

  • 坐标区是为图形中表示实际数据的对象定义坐标系的容器。

  • 数据可视化对象 - 实现各种类型图形的线条、文本、图像、曲面和填充。

图窗

        图窗是 MATLAB® 图形显示于其中的窗口。图窗包含菜单、工具栏、用户界面对象、上下文菜单和坐标区。

        图窗在 MATLAB 中扮演两种不同的角色:

  • 包含数据图形

  • 包含用户界面(界面中可以包含图形)

图窗控制的图形功能

图窗属性控制某些会影响图形的特征:

  • ​曲面、补片的颜色和透明度 - Alphamap 和 Colormap

  • ​绘制的线条和坐标区网格线的外观 - GraphicsSmoothing​

  • 打印和导出图形 - 图窗打印属性

  • 绘图速度和渲染功能 - Renderer

图窗使用不同的绘图方法,这些方法称为渲染器。有两种渲染器:

  • ​OpenGL® - MATLAB 用于大多数应用程序的默认渲染器。有关详细信息,可以参考opengl。​

  • Painters - 当 OpenGL 在计算机上遇到特定的图形硬件问题时使用,这些硬件可能具有软件缺陷或过时的软件驱动程序。它也可用于将图形导出到特定格式,如 PDF。

    注意:为了获得最佳效果,确保您的计算机含有硬件供应商提供的最新图形硬件驱动程序。有关所有图窗属性列表,可以参考Figure 属性

坐标区

        MATLAB 创建坐标区以定义每个图形的坐标系。坐标区通常包含在图窗对象中。坐标区自身也包含表示数据的图形对象。

        坐标区控制 MATLAB 如何显示图形信息的多个方面。

坐标区控制的图形功能

在图形中可自定义的大多数内容都由坐标区属性控制。

  • 坐标轴范围、方向和刻度放置

  • 轴标度(线性或对数)

  • 网格控件

  • 标题和轴标签的字体特征。

  • 定义多线条图形的默认线条颜色和线型

  • 轴线条和网格控件

  • 根据颜色图调整对象颜色

  • 视图和固定纵横比

  • 按坐标轴范围裁剪图形

  • 控制坐标区调整大小行为

  • 光照和透明度控制

表示数据的对象

        数据对象是图形用于表示数据的线条、图像、文本和多边形。例如:

  • 线条使用特定的 x 和 y 坐标连接数据点。

  • 标记定位某一范围值中的散点数据。

  • 矩形条指示直方图中值的分布。

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

数据对象控制的图形功能

数据对象属性控制对象外观,而且包含定义对象的数据。数据对象属性还可以控制某些行为。

  • 数据 - 更改数据,更新图形。很多数据对象可将其数据属性链接到包含数据的工作区变量。

  • 颜色数据 - 对象可控制如何通过指定颜色数据将数据映射到颜色。

  • 外观 - 指定线条颜色、标记、多边形表面以及线型、标记类型。

  • ​特定行为 - 属性可以控制对象如何解析或显示其数据。例如,条形对象有一个名为 BarLayout 的属性,该属性确定条形是分组还是堆叠。等高线对象有一个 LevelList 属性,该属性确定绘制等高线的等高线区间。​

高级函数与低级函数

绘图函数通过以下两种方法之一创建对象:

  • ​高级函数 - 创建整个图形,用新图形替换已有图形。高级函数包括 plot、bar、scatter 等等。有关高级函数摘要,可以参考MATLAB 绘图类型。​

  • ​低级函数 - 添加图形对象,对现有图形做最少的更改。低级函数包括 line、patch、rectangle、surface、text、image 和 light。​

组对象

        组对象可以将多个数据对象作为一个整体。例如,您可以将整个组设置为可见或不可见,当点击其中一个时选择所有对象,或应用一个变换矩阵以旋转、转换或缩放组中的所有对象。

        以下代码将 hggroup 函数返回的组对象设定为所绘线条的父级。文本对象不是组的一部分。

y = magic(5);
hg = hggroup;
plot(y,'Parent',hg)
text(2.5,10,'Plot of 5x5 magic square')

注释对象

        注释对象包含箭头、文本框以及两者组合。注释对象有特殊的功能,这些功能突破数据对象的限制,可用来注释图形:

  • 注释对象是图窗的子级。

  • 可以在图窗中轻松定位注释。

  • 以归一化图窗坐标定义注释对象的位置:左下角 = (0,0),右上角 = (1,1),这使得其定位独立于用坐标区表示的数据范围。

注意:MATLAB 将特定层设定为注释对象的父级。不要尝试将该层作为对象父级。MATLAB 会自动将注释对象分配到合适的父级。