MATLAB图形句柄  

1.1 图形对象及其句柄

1.2 图形对象属性

1.3 图形对象的创建

1.1 图形对象及其句柄

1.图形对象

MATLAB的图形对象包括计算机屏幕、图形窗口、坐标轴、用户菜单、用户控件、曲线、曲面、文字、图像、光源、区域块和方框等。系统将每一个对象按树型结构组织起来。

2.图形对象句柄

MATLAB在创建每一个图形对象时,都为该对象分配唯一的一个值,称其为图形对象句柄(Handle)。句柄是图形对象的唯一标识符,不同对象的句柄不可能重复和混淆。

计算机屏幕作为根对象由系统自动建立,其句柄值为0,而图形窗口对象的句柄值为一正整数,并显示在该窗口的标题栏,其他图形对象的句柄为浮点数。MATLAB提供了若干个函数用于获取已有图形对象的句柄。

例10-1 绘制曲线并查看有关对象的句柄。

1.2 图形对象属性

1.属性名与属性值

MATLAB给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值称为属性值。

2.属性的操作

set函数的调用格式为:

set(句柄,属性名1,属性值1,属性名2,属性值2,…)

其中句柄用于指明要操作的图形对象。如果在调用set函数时省略全部属性名和属性值,则将显示出句柄所有的允许属性。

get函数的调用格式为:

V=get(句柄,属性名)

其中V是返回的属性值。如果在调用get函数时省略属性名,则将返回句柄所有的属性值。

3.对象的公共属性

对象常用的公共属性:Children属性、Parent属性、Tag属性、Type属性、UserData属性、Visible属性、ButtonDownFcn属性、CreateFcn属性、DeleteFcn属性。

例10-2 在同一坐标下绘制红、绿两根不同曲线,希望获得绿色曲线的句柄,并对其进行设置。

1.3 图形对象的创建

1.3.1 图形窗口对象

建立图形窗口对象使用figure函数,其调用格式为:

句柄变量=figure(属性名1,属性值1,属性名2,属性值2,…)

MATLAB通过对属性的操作来改变图形窗口的形式。也可以使用figure函数按MATLAB缺省的属性值建立图形窗口:

figure 或 句柄变量=figure

要关闭图形窗口,使用close函数,其调用格式为:

close(窗口句柄)

另外,close all 命令可以关闭所有的图形窗口,clf命令则是清除当前图形窗口的内容,但不关闭窗口。

MATLAB为每个图形窗口提供了很多属性。这些属性及其取值控制着图形窗口对象。除公共属性外,其他常用属性如下:MenuBar属性、Name 属性、NumberTitle属性、Resize属性、Position属性、Units属性、Color属性、Pointer属性、 KeyPressFcn(键盘键按下响应)、WindowButtonDownFcn(鼠标键按下响应)、 WindowButtonMotionFcn(鼠标移动响应)及WindowButtonUpFcn(鼠标键释放响应)等。

例10-3 建立一个图形窗口。该图形窗口没有菜单条,标题名称为“我的图形窗口”,起始于屏幕左下角、宽度和高度分别为450像素点和250像素点,背景颜色为绿色,且当用户从键盘按下任意一个键时,将在该图形窗口绘制出正弦曲线。

1.3.2 坐标轴对象

建立坐标轴对象使用axes函数,其调用格式为:

句柄变量=axes(属性名1,属性值1,属性名2,属性值2,…)

调用axes函数用指定的属性在当前图形窗口创建坐标轴,并将其句柄赋给左边的句柄变量。也可以使用axes 函数按MATLAB缺省的属性值在当前图形窗口创建坐标轴:

axes 或 句柄变量= axes

用axes 函数建立坐标轴之后,还可以调用axes 函数将之设定为当前坐标轴,且坐标轴所在的图形窗口自动成为当前图形窗口:

axes(坐标轴句柄)

MATLAB为每个坐标轴对象提供了很多属性。除公共属性外,其他常用属性如下:Box属性、GridLineStyle属性、Position属性、Units属性、Title属性等。

例10-4 利用坐标轴对象实现图形窗口的任意分割。

利用axes函数可以在不影响图形窗口上其他坐标轴的前提下建立一个新的坐标轴,从而实现图形窗口的任意分割。

1.3.3 曲线对象

建立曲线对象使用line函数,其调用格式为:

句柄变量=line(x,y,z,属性名1,属性值1,属性名2,属性值2,…)

其中对x,y,z的解释与高层曲线函数plot和plot3等一样,其余的解释与前面介绍过的figure和axes函数类似。

每个曲线对象也具有很多属性。除公共属性外,其他常用属性如下:Color属性、LineStyle属性、LineWidth属性、Marker属性、MarkerSize属性等。

例10-5 利用曲线对象绘制曲线。

1.3.4 文字对象

使用text函数可以根据指定位置和属性值添加文字说明,并保存句柄。该函数的调用格式为:

句柄变量=text(x,y,z,'说明文字',属性名1,属性值1,属性名2,属性值2,…)

其中说明文字中除使用标准的ASCII字符外,还可使用LaTeX格式的控制字符。

除公共属性外,文字对象的其他常用属性如下:Color属性、String属性、Interpreter属性、FontSize属性、Rotation属性。

例10-6 利用曲线对象绘制曲线并利用文字对象完成标注。

1.3.5 曲面对象

建立曲面对象使用surface函数,其调用格式为:

句柄变量=surface(x,y,z,属性名1,属性值1,属性名2,属性值2,…)

其中对x,y,z的解释与高层曲面函数mesh和surf等一样,其余的解释与前面介绍过的figure和axes等函数类似。

每个曲面对象也具有很多属性。除公共属性外,其他常用属性如下:EdgeColor属性、FaceColor属性、LineStyle属性、LineWidth属性、Marker属性、MarkerSize属性等。

例10-7 利用曲面对象绘制三维曲面z=sin(x)。

【转】MATLAB图形句柄(二)的更多相关文章

  1. MATLAB学习笔记(十)——MATLAB图形句柄

    (一)图形对象及其句柄 一.图形对象 MATLAB图形对象包括: 1.MATLAB每一个具体图形一定包括计算机屏幕和图形窗口两个对象 二.图形对象句柄 1.定义 MATLAB在创建每一个图形对象时,都 ...

  2. matlab图形句柄属性总结

    原文在于雪漫的bloghttp://blog.sina.com.cn/s/blog_4b9b714a0100cce2.html这两天在看句柄式图形方面的东西,以下是我在看书过程中整理的学习笔记,比较详 ...

  3. 【转】matlab图形句柄详解(一)

    在matlab中,每一个对象都有一个数字来标识,叫做句柄.当每次创建一个对象时,matlab就为它建立一个唯一的句柄,句柄中包含有该对象的相关信息参数,可以在后续程序中进行操作,改变其中的参数,以便达 ...

  4. Matlab——图形绘制——二维平面图形

    二维平面图形 hold on ————在已画好的图形上添加新的图形 plot 是绘制一维曲线的基本函数,但在使用此函数之前,我们需先定义曲线上每一点的x 及y 座标.下例可画出一条正弦曲线: > ...

  5. MATLAB 图形图像处理

    theme: MATLAB author: pprp date: 2018/2/2 --- MATLAB 图形图像处理 二维绘图命令 plot 线性空间 plot(t,[x1,x2,x3]) : 在同 ...

  6. MATLAB图形界面设计(上)

    参考https://www.cnblogs.com/BlueMountain-HaggenDazs/p/4307777.html 一.图形句柄 1.定义 MATLAB在创建每一个图形对象时,都会给该对 ...

  7. Matlab图形调色

    Matlab图形调色 Simple example var colormap = require('colormap') options = {   colormap: 'jet',   // pic ...

  8. matlab中句柄@的用法

    @是Matlab中的句柄函数的标志符,即间接的函数调用方法. 1 句柄函数 主要有两种语法: handle = @functionname handle = @(arglist)anonymous_f ...

  9. matlab函数句柄

    matlab函数句柄 直接调用函数:  被调用函数只能被其M文件同名的主函数或在M文件中的其他函数调用,一个文件只有一个主函数. 间接调用函数:  避免只能使用直接调用函数的情况,个人理解就是为一个函 ...

随机推荐

  1. 安装配置Oracle 12c RAC

    http://www.lab128.com/rac12_installation_using_vb/article_text.html

  2. IDEA新建spring boot项目没有Spring Initializr选项

    在settings -> Plugins 里面搜索spring boot,勾选上,然后再重启下idea,就可以了.如果Plugins里面没有spring boot的话,先安装下,再勾选. 参考( ...

  3. [转]scp用法

    从本地复制到远程 复制目录命令格式: scp -r local_folder remote_username@remote_ip:remote_folder 或者 scp -r local_folde ...

  4. 全景图(panorama)低成本解决方案

    软硬件 米家全景相机,用于较低成本(学习成本+Money)的获得全景图像,而比较专业的获得全景图像的方法则是单反+云平台+PTGui的组合. PhotoShop,用于处理全景图像. PhotoShop ...

  5. 在mac下使用终端命令通过ssh协议连接远程linux系统,代替windows的putty

    指令:ssh username@server.address.com 事例:wangmingdeMacBook-Pro:~ xxxxxxxxxx$ ssh root@XXXX.net The auth ...

  6. deeplearning.ai 改善深层神经网络 week1 深度学习的实用层面 听课笔记

    1. 应用机器学习是高度依赖迭代尝试的,不要指望一蹴而就,必须不断调参数看结果,根据结果再继续调参数. 2. 数据集分成训练集(training set).验证集(validation/develop ...

  7. 强连通分量&hdu_1269&Codeforce 369D

    强连通分量 标签: 图论 算法介绍 还记得割点割边算法吗.回顾一下,tarjan算法,dfs过程中记录当前点的时间戳,并通过它的子节点的low值更新它的low,low值是这个点不通过它的父亲节点最远可 ...

  8. Ultra-QuickSort(树状数组求逆序对数)

    Ultra-QuickSort 题目链接:http://poj.org/problem?id=2299 Time Limit: 7000MS   Memory Limit: 65536K Total ...

  9. EMC题

    [面试题]EMC易安信面试题解 1. 除以59的余数是多少. 来自wiki:费马小定理是数论中的一个定理:假如a是一个整数,p是一个質数,那么 如果a不是p的倍数,这个定理也可以写成 这个书写方式更加 ...

  10. js代码性能优化的几个方法

    相信写代码对于大部分人都不难,但想写出高性能的代码就需要一定的技术积累啦,下面是一些优化JavaScript代码性能的常见方法. 一.注意作用域 1.避免全局查找 使用全局变量和函数肯定要比局部的开销 ...