参考https://www.cnblogs.com/BlueMountain-HaggenDazs/p/4307777.html

一、图形句柄

1、定义

MATLAB在创建每一个图形对象时,都会给该对象分配一个唯一确定的值,称其为图形对象句柄。

PS:(1)计算机屏幕句柄默认为0.

(2)图形窗口对象的句柄值为一正整数,并显示在窗口标题栏中

(3)其他图形对象的句柄为浮点数。

2、获取已有对象的句柄

  直接输入该代码结果如下图:

  (1)gcf:

  (2)gca:

  (3)gco:

  代码示例:

x=linspace(,*pi,);
y=sin(x);

h0=plot(x,y,'r')    %曲线对象的句柄
h1=gcf              %图形窗口句柄
h2=gca              %坐标轴句柄
h3=findobj(gca,'Marker','x')            %坐标轴上曲线的句柄

  结果输出各个对象的句柄。

3.图形对象属性

(1)set函数

  set(句柄,属性名1,属性值1,属性名2,属性值2,……)
  其中句柄指明要操作的对象,set中的属性可以全部缺省

(2)get函数

  V=get(句柄,属性名)
  V是返回的属性值,如果省略属性名,则返回句柄的所有属性值。

x=linspace();
y=sin(x);
h=plot(x,y);%先将图形句柄赋值给h
col=get(h,'Color'); %得到曲线的颜色
V=,'ScreenSize');   %得到当前窗口的平屏幕分辨率

4.对象的公共属性

(1)Children属性:

取值是该对象所有子对象的句柄组成的一个向量。

(2)Parent属性:

取值是该对象父对象的句柄。

(3)Tag属性:

取值是一个字符串,作为对象的一个标识符(别名)

(4)Type属性:

表示该对象的类型(显然是不可以改变的)

(5)UserData属性:

该属性的取值是一个矩阵,缺省值为空矩阵。一般将一个图形对象有关的比较重要的数据储存在这个属性中,借此达到传送数据的作用。

一般做法:先用set函数给某一句柄添加一些附加数据(一个矩阵),如果想使用这样的矩阵,再用get调用出来。

(6)Visible属性:

取值是on(缺省值)或off。决定是否显示在屏幕上。但是不显示不代表不存在。

(7)ButtonDownFcn属性:

取值是一个字符串,一般是某个M文件名或一段MATLAB程序。图形对象巨鼎了一个作用区域,当单击该区域时,MATLAB自动执行该程序段。

(8)CreatFcn属性:

取值是一个字符串,一般是某个M文件名或一段MATLAB程序。当创建该对象时自动自行该程序段(同构造函数)

(9)DeleteFcn属性:

取值是一个字符串,一般是某个M文件名或一段MATLAB程序。当取消该对象时自动自行该程序段(同析构函数)

5.示例

x=:pi/:*pi;
y=sin(x);
z=cos(x);
plot(x,y,'r',x,z,'g');

H1=get(gca,'Children');      %获取两曲线句柄向量H1
:size(H1)
      ]       %【,,】表示绿色
        H1g=H1(k);                       %获取绿色线条句柄
    end
end
pause;              %暂停
set(H1g,'LineStyle',':','Marker','p');     %对绿色线条进行设置。

二、图形对象创建

1.窗口对象

句柄变量=figure(属性名1,属性值1,属性名2,属性值2);
%属性名和属性值可以缺省,则命令如下
句柄变量=figure  或者  figure
figure(窗口句柄)       %设置为当前窗口。
close(窗口句柄)        %关闭图形窗口
close all;                     %关闭全部图形窗口
clf;                              %清除当前图形窗口的内容,但不关闭窗口。

(1)MenuBar属性

取值是figure(缺省值)或none,用来控制窗口是否有菜单条。

如果属性为none,那么用户可以使用uimenu函数来加入自己的菜单条。

如果属性为figure,那么窗口保持默认的菜单条,这时可以采用uimenu函数在原默认的图形窗口菜单后面添加新的菜单项。

(2)Name属性

取值是字符串,缺省值为空,作为图形串口的标题

(3)NumberTitle属性:

取值是on(缺省值)或者off。决定是否以“Figure No.n:“为标题前缀,这里n是图形窗口的序号,即句柄值。

(4)Resize属性:

取值为on(缺省值)或off。决定在窗口对象建立后可否用鼠标改变该窗口的大小

(5)Position属性

(6)Units属性:

该属性的取值可以是下列字符串的任何一种:

pixel(像素,缺省值),normalized(相对单位),inches(英寸),centimeters(厘米)和points(磅)。

(7)Color属性:

取值可以用字符表示,也可以用三元组表示。缺省值为’k’即黑色。

(8)Pointer属性:

取值是arrow(缺省值)、crosshair、watch、topl、topr、botl、botr、circle、cross、fleur、custom等。

(9)对键盘及鼠标响应属性:

允许对键盘和鼠标键按下这样的动作进行响应。

2.坐标轴对象

句柄变量=axes(属性名1,属性值1,属性名2,属性值2,……);
%调用axes函数用制动的属性在当前图形窗口创建坐标轴,并将句柄赋给句柄变量。

axes  或  句柄变量=axes
%用axes函数建立缺省坐标轴

axes(坐标轴句柄)
%调用axes函数将之设定为当前坐标轴,且坐标轴所在的图形窗口自动成为当前图形窗口。

(1)Box属性:

取值是on或者off(缺省值)。它决定坐标轴是否带有边框。

(2)GridLineStyle属性:

取值是‘:’(缺省值)、‘-’、‘-.’、‘--’、‘none’。该属性定义网格线的类型

(3)Position属性:

该属性是由四个元素构成的向量,其形式为[n1,n2,n3,n4]。这个向量在图形窗口中决定一个矩形区域,坐标轴在其中。

(n1,n2)是左下角的坐标,(n3,n4)是矩形的宽和高。单位由Units属性决定

(4)Unit属性:

取值是normalized(相对单位,为缺省值)、inches(英寸)、centimeters(厘米)和points(磅)。

(5)Title属性:

该属性的取值是坐标轴标题文字对象的句柄,可以通过该属性对坐标轴标题文字对象进行操作。

ans=get(gca,'Title');
set(ans,'Color','r');

(6)XLabel、YLabel、ZLabel属性:

取值分别为x,y,z轴说明文字的句柄。其操作和Title属性相同。

ans=get(gca,'XLabel');
set(ans,'String','Values of X axis');

(7)XLim、YLim、ZLim属性:

取值都是具有2个元素的数值向量。3个属性分别定义个坐标轴的上下限。缺省为[0,1]。

(8)XScale、YScale、ZScale属性:

取值都是’linear’(缺省值)或’log’,这些属性定义个坐标轴的刻度类型

(9)View属性:

取值是两个元素的数值向量,定义视点方向。

3.曲线对象

句柄变量=line(x,y,z,属性名1,属性值1,属性名2,属性值2,……);
%x,y,z为三维坐标

(1)Color属性:

该属性的取值是代表某颜色的字符或者RGB值。定义曲线的颜色。

(2)LineStyle属性:

定义线性

(3)LineWidth属性:

定义线宽,缺省值为0.5磅。

(4)Marker属性:

定义数据点标记符号,缺省值为none

(5)MarkerSize属性:

定义数据点标记符号的大小,缺省值为6磅。

(6)XData,YData,Zdata属性:

取值都是数值向量或矩阵,分别代表曲线对象的3个坐标轴数据。

4.文字对象

句柄变量=text(x,y,z,'说明文字',属性名1,属性值1,属性名2,属性值2,……);
%说明文字可以使用LaTeX控制字符

(1)Color属性:

定义文字对象的颜色。

(2)String属性:

取值是字符串或者字符串矩阵,记录文字标注的内容。

(3)Interpreter属性:

取值是latex(缺省值)或none,该属性控制对文字标注内容的解释方式,即LaTeX方式或者ASCII方式、

(4)FontSize属性:

定义文字对象的大小,缺省值为10磅。

(5)Rotation属性:

取值是数值量,缺省值为0.定义文字对象的旋转角度。取正值是表示逆时针旋转。

MATLAB图形界面设计(上)的更多相关文章

  1. MATLAB图形界面设计(下)

    文章参考Blue Mountain https://www.cnblogs.com/BlueMountain-HaggenDazs/p/4307777.html 一.菜单设计 1.建立菜单项 (1)建 ...

  2. matlab gui界面设计记录

    我们要进行的程序是彩色图像处理试验示例,用这个程序来练习我们的gui前台设计. 程序功能介绍:具有彩色图像处理及保存和音乐播放功能效果如下图 2 在MATLAB的命令窗口中输入guide命令,打开gu ...

  3. Sprint 2 : ios图形界面设计与代码整合

    这周我们主要focus在personal photo experience 项目的ios图形界面设计与代码整合工作上. 工作进度: 1. 图形界面设计方面:兆阳和敏龙基本已经将ios手机客户端的雏形界 ...

  4. python的re模块一些方法 && Tkinter图形界面设计 && 终止python运行函数 && python读写文件 && python一旦给字符串赋值就不能单独改变某个字符,除非重新给变量赋值

    Tkinter图形界面设计见:https://www.cnblogs.com/pywjh/p/9527828.html#radiobutton 终止python运行函数: 采用sys.exit(0)正 ...

  5. windows 下 putty 登陆服务器 显示matlab图形界面

    本文需要下载 putty.exe 和 pscp.exe :http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Xming 主 ...

  6. MATLAB学习笔记(十一)——MATLAB图形用户界面设计

    (一)菜单设计 一.建立用户菜单 1.概况: 用户菜单一般含有一级菜单和二级菜单,乃至多级菜单.每一级菜单又包含多个菜单项.建立菜单可以使用uimenu函数. 2.uimenu函数调用: %建立一级菜 ...

  7. Tkinter图形界面设计(GUI)

    [因为这是我第一个接触的GUI图形界面python库,现在也不用了,所以大多数内容都来自之前花 钱买的一些快速入门的内容,可以当作简单的知识点查询使用] 在此声明:内容来自微信公众号GitChat,付 ...

  8. 【转】java图形界面设计(AWT)

    [转自]http://blog.sina.com.cn/s/blog_616e189f0100ne1t.html 1.       基本的java Frame操作. Java的图形界面的类主要包括AW ...

  9. java图形界面设计

    1.       基本的java Frame操作. Java的图形界面的类主要包括AWT和Swing.在AWT中图形元素的父类为Component. 继承关系如下:Component->Cont ...

随机推荐

  1. Spring MVC-表单(Form)标签-列表框(Listbox)示例(转载实践)

    以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_listbox.htm 说明:示例基于Spring MVC 4.1.6. 以下示例 ...

  2. 对于Linux内核tty设备的一点理解

    http://blog.chinaunix.net/uid-7828352-id-3233064.html

  3. MVC.Net:WebAPI添加对jsonP的支持

    在某些情况下,我们需要在WebAPI项目中添加对jsonP的支持.比如我们同时创建了MVC.Net和WebAPI两个项目,这两个项目使用不同的端口,这时如果MVC.Net项目的前端想要直接访问WebA ...

  4. Two Heads Are Often Better Than One

    Two Heads Are Often Better Than One Adrian Wible PROGRAMMING REQUIRES DEEP THOUGHT, and deep thought ...

  5. 查看编译器的默认include 路径

    echo | gcc -v -x c++ -E - echo | g++ -v -x c++ -E - `gcc -print-prog-name=cc1plus` -v `g++ -print-pr ...

  6. H3C交换机经常使用命令汇总

    H3C交换机经常使用命令 1.查看Linux下查看port状态 root@root:~# netstat -an|grep -E "6002|6003" 2.H3C交换机显示当前配 ...

  7. wordpress相关

    事故:wordpress不论什么页面所有是404 not found,找不到不论什么页面. 解决:在nginx.conf中80port以下的凝视消除掉. location ~ \.php$ {     ...

  8. activeMQ公布订阅模式中中经常使用工具类

    package com.jms; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import javax.j ...

  9. WPF学习笔记——在“System.Windows.StaticResourceExtension”上提供值时引发了异常

    在"System.Windows.StaticResourceExtension"上提供值时引发了异常 因应需要,写了一个转换器,然后窗体上引用,结果就出来这个错.编译的时候没事, ...

  10. iOS网络开发工具集----字符串操作和时间操作

    一.字符串的操作方法 #pragma mark - 创建字符串 - (void)CreatString { // <1> 创建字符串 NSString *strS = @"Thi ...