MATLAB实验指导书(2014) 下载本文

内容发布更新时间 : 2024/12/24 2:11:24星期一 下面是文章的全部内容请认真阅读。

原因。

clear t1=(0:11)/11*pi; y1=sin(t1).*sin(9*t1); t2=(0:100)/100*pi; y2=sin(t2).*sin(9*t2); subplot(2,2,1),plot(t1,y1,'r.'),axis([0,pi,-1,1]),title('子图(1)'); subplot(2,2,2),plot(t2,y2,'r.'),axis([0,pi,-1,1]),title('子图(2)'); subplot(2,2,3),plot(t1,y1,t1,y1,'r.') ,axis([0,pi,-1,1]),title('子图(3)'); subplot(2,2,4),plot(t2,y2) ,axis([0,pi,-1,1]),title('子图 (4)')

二.编程实现。

用图形表示连续调制波形y1?sin?t?sin?9t?,y2?sin?t?sin?18t?过零点及其包络线,如下图所示。

实验五 图形用户界面编程

[实验目的]

1 .熟悉MATLAB GUIDE中的控件和菜单编辑。 2 .使用GUIDE向导进行界面设计。

[实验原理]

在 MATLAB 中创建图形用户界面的方法有两种——图形句柄和 GUIDE,这两种实现的方法都需要使用 M 语言编程,但是技术的侧重点不同。其实 GUIDE 创建图形用户界面的基础也是图形句柄对象,只不过是具有很好的封装,使用起来简便,而且还能够做到可视化的开发,对于一般的用户使用 GUIDE 创建图形用户界面应用程序已经足够了。

MATLAB 提供了基本的用户界面元素,包括菜单、快捷菜单、按钮、复选框、单选框、文本编辑框、静态文本、下拉列表框、列表框等。需要注意的是,MATLAB 的图形用户界面程序大多数是对话框应用程序,利用MATLAB编写文档视图应用程序相对来说比较困难。

使用 GUIDE 和图形句柄创建的图形用户界面的主要区别在于,利用图形句柄创建的图形界面应用程序只有一个文件——M文件,而利用GUIDE 创建的图形用户界面应用程序一般由两个文件组成,一个是应用程序文件——M文件,另一个是外观文件——fig文件。

MATLAB 图形用户界面的例子非常多,不仅在 MATLAB 的 Demos 中有很多用户界面的例子,如图所示,在 MATLAB 的工具箱中也有很多是利用 GUIDE 编写的小工具。若 MATLAB 的图形用户界面功能不能够满足用户的需要,用户还可以利用Java 语言的工程来扩充界面功能。

通过如图所示的界面,用户可以不必过多了解内部细节就可以使用MATLAB的强大数据可视化和计算的功能了。例如,单击用户界面右边的按钮,可以在图形窗体的绘图区域绘制各种图形,同时在文本显示区域显示具体命令行代码。

[实验内容]

为了便于创建图形用户界面,MATLAB 提供了一个开发环境,能够帮助用户创建图形用户界面,这就是GUIDE——Graphic User Interface Development Environment。

在 MATLAB中启动 GUIDE 的方法是在MATLAB命令行中键入指令: >>guide

或者通过“Start”菜单选择“MATLAB”下的“GUIDE”命令。

这时在MATLAB 6.5中,将直接启动 GUIDE Quick Start窗体,在这个窗体中,可以初步选择图形用户界面的类型,如图所示。

除了能够创建新建的图形界面之外,还可以选择已经存在的图形界面文件,该文件的扩展名为 fig,是 MATLAB 自己的图形文件格式。也可以通过下面的命令行直接打开一个存在的GUI界面文件:

>> guide gui_filename

这时在GUIDE 中将显示已经创建好的图形界面外观。

选择空白界面类型,并单击“OK”按钮,这时MATLAB将启动 GUIDE 的图形界面,如图所示。

在 GUIDE 界面中,位于中央的深灰色部分为绘制控件的画布,用户可以调整画布的尺寸以得到不同的界面尺寸。 在 GUIDE 界面的左侧为 MATLAB 的控件面板,控件面板

包含了能够在画布上绘制的图形控件。

本实验的图形用户界面中包含如下控件:

两个推按钮(push button),分别完成绘制三维曲面和改变色彩的功能; 五个静态文本框(static text),分别用来完成显示不同信息的功能; 一个滚动条(slide),用来完成改变三维曲面上的分隔线色彩; 一个坐标轴(axes),用来显示三维曲面;

一个菜单(menu),用来完成清除坐标轴的功能。

创建这样一个图形用户界面大体的步骤:

首先,进行界面设计。在这一过程中,需要对界面空间的布局、控件的大小等进行设计,最好的方法就是在一张纸上简要地绘制一下界面的外观,做到心中有数。

然后,利用GUIDE 的外观编辑功能,将必要的控件依次绘制在界面的“画布”上。在这一过程中,主要将所有控件摆放在合适的位置,并且设置控件合适的大小。

第三步,设置控件的属性,这一步骤重点需要设置控件重要的属性值,例如控件的回调函数、标签和显示的文本等。

第四步,也就是最后一步,就是针对不同的控件需要完成的功能进行M语言编程。

到现在,整个图形界面元素就基本上创建完毕了,这时可以单击 GUIDE 工具栏中的Run 按钮 ,激活图形界面,由于在前面的步骤中,设置了仅生成 Fig 文件,所以这时可以利用激活界面的方法来考察界面的布局状况。

现在已经得到了图形用户界面,但是现在的图形界面还不能实现任何功能,它不能响应用户的输入,也不能在界面的坐标轴中绘制图形对象,这些功能需要通过编写 M 语言应用程序完成。进行图形用户界面编程的工作主要有两个步骤,首先设置控件的属性,然后再针对不同的控件进行 M语言编程。

MATLAB 的图形对象都有不同的属性,在所有的属性中,比较重要的是控件的 String属性和 Tag 属性,前者为显示在控件上的文本,后者相当于为控件取个名字,这个名字为控件在应用程序中的 ID,控件的句柄和相应的回调函数都与这个名字有直接的关系。设置控件的属性可以使用GUIDE 的属性察看器和控件浏览器完成。 单击工具条中的控件浏览器按钮 ,在弹出的对话框中,可以察看所有已经添加在图形界面中的对象以及对象的String和 Tag属性,如图所示。

首先设置图形窗体的属性,用鼠标双击控件对象浏览器中的“figure(Untitled)”,可以打开属性察看器编辑修改和察看图形窗体的属性。这里需要修改的属性包括图形的Name属性和Tag属性,将Name属性设置为Simple GUI,将Tag属性设置为simpleGui。

然后双击控件对象浏览器中的 uicontrol(pushbutton1”Push Button”),这时将打开按钮对象的属性察看器,同时,在GUIDE 的外观编辑器中,可以看到画布上的第一个按钮被选中了。这时,需要将该按钮的String属性设置为 Draw,将Tag属性设置为 btnDraw,

依此类推,分别将其他的控件设置为如下的属性: ① 第二个按钮: String : Change Color。 Tag : btnChangeColor。 ② 静态文本框 1: String : Color。

③ 静态文本框 2: String : Red。 Tag : txtRed。

HorizontalAlignment : left。 ④ 静态文本框 3: String : Green。 Tag : txtGreen。

HorizontalAlignment : left。 ⑤ 静态文本框 4: String : Blue。 Tag : txtBlue。

HorizontalAlignment : left。 ⑥ 静态文本框 5: String : Edge Color。 ⑦ 滚动条:

Tag : sliderEdgeColor。 注意:

在设置图形界面对象的Tag属性时,建议按照如下的格式进行设置:objectstyleObject Function,即使用表示对象类型的字符串作为Tag属性的前缀,这样在编写控件回调函数时,能够直接从控件的名称上判断控件的类型,便于程序的管理和维护。

再次激活图形界面,观察图形界面效果。

编写回调函数

MATLAB 图形用户界面控件的回调函数,是指在界面控件被选中的时候,响应动作的