MATLAB图形对象:什么意思、基本要素
图形对象是MATLAB中用来显示数据和创建GUI的基本绘图元素,对象的每个实例(instance)都对应唯一的标识符(Identifier),此标识符称为对象的句柄(handle),句柄由系统设定,用户不能改变。用户可以利用句柄轻松地操作现有图形的各项特征,即设置对象属性。
图形对象是由低层绘图函数生成的对象,称为句柄图形对象,即是数据可视和界面制作的基本绘图要素。MATLAB的图形对象包括计算机屏幕、图形窗口、坐标轴、用户菜单、用户控件、曲线、曲面、文字、图像、光源、区域块和方框等。系统将每一个对象按树型结构组织起来。每个具体图形不必包含每个对象,但每个图形必须具备根屏幕和图形窗口。
图形对象的基本要素以根屏幕为先导,所有的图形对象都按照“父子”(从属)关系和“兄弟”(平行)的方式组成层次结构。
详细说明:
根:图形对象的根,对应于计算机屏幕,根只有一个,其他所有图形对象都是根的后代。用户是不能创建根对象的,当启动MATLAB时根对象已经存在,用户可以通过设置root的属性值改变图形的显示效果。
图形窗口:根的子代,窗口的数目不限,所有图形窗口都是根屏幕的子代,除根之外,其他对象则是窗的后代。
界面控制:图形窗口的子代,创建用户界面控制对象,使得用户可采用鼠标在图形上做功能选择,并返回句柄。
用户菜单:图形窗口的子代,创建用户界面菜单对象。
坐标轴:图形窗口的子代,创建轴对象,并返回句柄,是许多图形对象的父对象。图14-2是以具体实例介绍各个轴的子代。坐标轴有3种子对象:核心对象、绘图对象和组对象,对坐标轴及其3种子对象的操作即构成低层绘图操作,也就是对图形句柄的操作。
核心对象:包含曲线、曲面、文本、图像、区域块、方块和光源,用于一般图形绘制函数,以及较为特殊的核心对象。
绘图对象:一些可以用高级绘图方式绘制图形的函数都可以返回对应的句柄值,从而创建图形对象。MATLAB中有些图形对象是由核心对象组成的,所以通过该核心对象的属性可以控制这些图形对象的相关属性。
组对象:允许用户将轴对象的子对象设置为一个组,以便设置整个组内的对象属性。一旦选取了一个组对象,则其中的所有组对象都将被选取。MATLAB中的组对象有两种:hggroup和hgtransform。其中hggroup是用在当用户创建一个组对象,并控制组对象的可见性或可选择性来作为一个独立对象时使用;hgtransform是在当组对象某些特性需要转换时使用。
根可包含一个或多个图形窗口,每一个图形窗口可包含一组或多组坐标轴。所有其他的对象都是坐标轴的子对象,并且在这些坐标轴上显示。所有创建对象的函数当父对象或对象不存在时,都会创建它们。例如,如果没有图形窗口,plot(rand(size([1:10])))函数会用默认属性创建一个新的图形窗口和一组坐标轴,然后在这组坐标轴内画线。