2020 Matlab GUI使用指南(附例题)

您所在的位置:网站首页 MATLAB的GUI界面颜色窗口无法放大 2020 Matlab GUI使用指南(附例题)

2020 Matlab GUI使用指南(附例题)

2023-08-11 16:14| 来源: 网络整理| 查看: 265

图形句柄在这里插入图片描述 什么是句柄

图形窗口是由不同图形对象(坐标轴、曲线、曲面或文本)组成的图形界面。

MATLAB给每个图形对象分配一个标识符,称为句柄,通过句柄对图形对象的属性进行设置,这种直接对图形句柄进行操作的绘图方法称为低层绘图操作

句柄怎么用

直接上一段例程。

x=linspace(0,2*pi,30); y=sin(x); h0=plot(x,y,‘rx’) %线对象 h1=gcf %窗口对象 h2=gca %坐标轴对象 set(h0,'color','b') %设置线的颜色为blue

从例程可以看出,通过set函数,可以设置线对象的属性。

常用属性

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

图形窗口的常用属性如下:MenuBar属性、Name属性、NumberTitle属性、Resize属性、Position属性、Units属性、Color属性、Pointer属性、对键盘以及鼠标响应等。

坐标轴的常用属性如下:Box属性、GridLineStyle属性、Position属性、Units属性、Title属性等。

线对象的常用属性,除公共属性外,其他常用属性如下:Color属性、LineStyle属性、LineWidth属性、Marker属性、MarkerSize属性等。

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

操作属性

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

V = get: 获得句柄图形对象属性、返回某些对象的句柄值

用例程展示一下他们的具体用法

x=linspace(0,2*pi,30); y=sin(x); h0=plot(x,y,‘rx’) %线对象 h1=gcf %窗口对象 h2=gca %坐标轴对象 set(h0,'color','b') %设置线的颜色为blue v=get(h0,'color') %获取线对象的颜色 对鼠标 按键的响应

keypressfcn属性检测是否有按键被按下。

例程如下:有键盘按键被按下显示文本:string

figure('name','我的图形窗口','position',[200,200,600,500], 'color','g','menubar','none','keypressfcn','text(0.3,0.5,''string'')')

WindowButtonDownFcn属性检测鼠标是否被按下。

例程如下:有鼠标按键被按下,显示文本:string

figure('name','我的图形窗口','position',[200,200,600,500], 'color','g','menubar','none','WindowButtonDownFcn','text(0.3,0.5,''string'')') 写作业 第一题:

建立一个图形窗口,使之背景颜色为红色,并在窗口上保留原有的菜单项,而且在按下左键之后显示出 Left Button pressed字样

解:这个还是很简单的,一行代码解决。

figure('color','r','WindowButtonDownFcn','text(0.3,0.5,''left Button press'')')

但等到输出会发现一个巨丑的白色坐标轴。

在这里插入图片描述

强迫症如我,怎么能忍受,解决方法很简单,将坐标轴区域设置为和背景通一颜色就可以了。

set(gca,'XColor','red') set(gca,'YColor','red') set(gca,'Color','red')

在这里插入图片描述 这样好看多了。

第二题

利用图形对象绘制下列曲线,要求先利用默认属性绘制曲线,然后通过图形句柄操作来改变曲线的颜色、线型和线宽,并利用文本对象给曲线添加文字标注 y = 1 + x 2 1 + x 4 y = \frac{1+x^2}{1+x^4} y=1+x41+x2​

程序很简单,唯一需要注意的是,linewidth属性的值是数字。

x = [0:0.01:10]; y = (1+x.^2)./(1+x.^4); h0 = figure('name','第二题') h1=plot(x,y) %线对象 h2=gcf %窗口对象 h3=gca %坐标轴对象 set(h1,'color','b','linestyle','-.','linewidth',1) %设置线的颜色为blue text(2.5,0.4,'\leftarrow 这是所需曲线','FontSize',15)

在这里插入图片描述

第三题

绘制曲线y2=sin(x)sn(9x)设置曲线颜色为红色,自定义标记,然后使用 findobjt函数找到红色曲线,再设置该曲线为绿色。 y 1 = s i n ( x ) y 2 = s i n ( x ) s i n ( 9 x ) y1 = sin(x) \\y2 = sin(x)sin(9x) y1=sin(x)y2=sin(x)sin(9x)

程序如下,用到了之前没提的findobj函数。该函数用法很简单,gca代表坐标轴区域,一个属性和值,搜索属性为对应值的对象并返回给h4。

x = [0:0.01:10]; y1 = sin(x); y2 = sin(x).*sin(9.*x); h0 = figure('name','第三题') h1=plot(x,y1,'r-') %线对象 hold on h11=plot(x,y2,'ro') %线对象 h2=gcf %窗口对象 h3=gca %坐标轴对象 h4=findobj(gca,'Type','line','color','r') set(h4,'color','b')

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3