MATLAB在二维绘图中的应用培训讲学_第1页
MATLAB在二维绘图中的应用培训讲学_第2页
MATLAB在二维绘图中的应用培训讲学_第3页
MATLAB在二维绘图中的应用培训讲学_第4页
MATLAB在二维绘图中的应用培训讲学_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Good is good, but better carries it.精益求精,善益求善。MATLAB在二维绘图中的应用-MATLAB语言课程论文MATLAB在二维绘图中的应用姓名:郭露学号:12012241985专业:电气工程与自动化班级:12级电气1班指导老师:李虹学院:物理电气信息学院完成日期:2013年12月10日MATLAB在二维绘图中的应用(姓名:郭露1201224198512级电气1班)【摘要】二维图形是将平面坐标上的数据点连接起来的平面图形。可以采用不同的坐标系,如直角坐标、对数坐标、极坐标等。二维图形的绘制是其他绘图操作的基础。强大的绘图功能是MATLAB的特点之一。MAT

2、LAB提供了一系列的绘图函数,用户不仅不许考虑绘图细节,只需给出一些基本的参数就能得到所需要的图形,这一类函数称为高层绘图函数。除此之外,MATLAB还提供了直接对句柄进行操作的一系列的低层的绘图操作。这类操作将图形的每个元素(如坐标轴、曲线、文字等)看做是一个独立的对象,系统给每个对象独立的分配一个句柄,以后可以通过该句柄对改图元素进行操作,而不影响图形的其他部分。高层绘图操作简单明了,方便高效,使用户最常使用的绘图方法,而低层绘图操作控制和表现图形的能力更强,为用户自主绘图创造了条件。其实MATLAB的高层绘图函数都是利用低层绘图函数建立起来的。所以MATLAB的计算准确、效率高、使用快捷

3、等优点常被广泛应用于科学和工程领域.【关键字】MATLAB语言二维绘图图像处理【引言】MATLAB语言是当前国际学科界应用很广泛的一种软件,强大的绘图功能是MATLAB的特点之一。MATLAB提供了一系列的绘图函数,利用它强大的图像处理来绘制二维图形既简单而且也很方便。在绘制二维图形的过程中也用到了MATLAB语言的其他功能,比如说它提供的一些函数,利用这些函数可以方便的生成一些特殊矩阵,因此可生成一个坐标平面。MATLAB语言强大的功能也在二维绘图中的得到了很广泛的应用,利用它所提供的精细的图像处理功能还可以对所绘制的二维图形作一个修饰的处理。MATLAB语言具有强大的以图形化显示矩阵和数组

4、的能力,同时它给这些图形增加注释并且可以对图形进行标注和打印。MATLAB的图形技术包括二维的可视化、图形处理、动画等高层次的专业图形的高级绘图,例如图形的光照处理、色度处理以及四维数据的表现等。那么,如何把它强大的功能应用于实际应用中,下面我们将用实例说明。【正文】MATLAB的主要功能及特点MATLAB近几年广泛用于图像处理和识别,使用MATLAB设计模式识别应用软件将使设计者获得更大的自由,可以任意执行特殊的算法和实现复杂的操作,MATLAB之所以成为世界顶级的科学计算与数学应用软件,是因为它随着版本的升级与不断完善而具有愈来愈强大的功能。(1)数值计算功能。(2)符号计算功能。(3)数

5、据分析功能。(4)动态仿真功能。(5)图形文字统一处理功能。MATLAB有三大特点:一是功能强大。主要包括数值计算和符号计算、计算结果和编程可视化、数学和文字统一处理、离线和在线计算。二是界面友好,编程效率高。MATLAB是一种以矩阵为基本单元的可视化程序设计语言,语法结构简单,数据类型单一,指令表达与标准教科书的数学表达式相近。三是开放性强。MATLAB有很好的可扩充性,可以把它当成一种更高级的语言去使用。使用它很容易编写各种通用或专用应用程序。MATLAB在二维绘图中的具体应用1.常用的绘图函数1plot函数的基本用法plot函数用于绘制二维平面上的线性坐标曲线图,要提供一组x坐标和对应的

6、y坐标,可以绘制分别以x和y为横、纵坐标的二维曲线。plot函数的应用格式plot(x,y)其中x,y为长度相同的向量,存储x坐标和y坐标。2含多个输入参数的plot函数plot函数可以包含若干组向量对,每一组可以绘制出一条曲线。含多个输入参数的plot函数调用格式为:plot(x1,y1,x2,y2,xn,yn)当输入参数有矩阵形式时,配对的x,y按对应的列元素为横坐标和纵坐标绘制曲线,曲线条数等于矩阵的列数。例1作出函数的图形,并观测它们的周期性。先作函数在上的图形,用MATLAB作图的程序代码为:x=linspace(-4*pi,4*pi,300);%产生300维向量xy=sin(x);

7、%正玄函数plot(x,y)%二维图形绘图命令结果如图1所示此图也可用fplot命令,相应的MATLAB程序代码为:clear;close;%clear清理内存;close关闭已有口。fplot(sin(x),-4*pi,4*pi)%绘制正玄图形结果如图2所示图1的图形图2的图形2.fill将资料点视为多边行顶点,并将此多边行涂上颜色:x=linspace(0,10,50);y=sin(x).*exp(-x/3);fill(x,y,b);%b为蓝色3.feather将每一个资料点视复数,并以箭号画出:theta=linspace(0,2*pi,20);z=cos(theta)+i*sin(th

8、eta);feather(z);二维图形的修饰由前面的图1至2可以看出,当利用plot命令绘图时,虽然运用起来比较简单,但它所自动产生的图形却显得有些简单,未能产生特殊的效果。为此MATLAB提供了一些图形函数,专门对由plot命令所画出的图形进行进一步的修饰,以使其更加美观、更便于应用。如坐标轴范围的设定(axis命令)、加坐标轴名称(xlabel、ylabel命令)、加网络(grid命令)、加图形加图题(title命令)、对图形进行文字注释(text命令)等。1.用不同的线型及颜色加以绘制。x=-2*pi:2*pi/30:2*pi;%产生向量xy1=sin(x);y2=cos(x);%正余

9、玄函数plot(x,y1,x,y2,gp)%gp表示绘出的图形是绿色五角星线结果如图4图4不同线型与颜色绘制的正余玄图形2.坐标轴的调整MATLAB可以自动根据曲线数据的范围选择合适的坐标系,从而使得曲线能够尽可能清晰地显示出来,所以在一般情况下用户不必去进行坐标系的选择。但是,如果用户对MATLAB所自动生成的坐标轴不太满意的话,则可以利用axis所要绘制出的图形的坐标轴进行调整。axis命令的功能非常丰富,按常用用法有如下4类调整坐标轴的范围;调整坐标轴的状态;保存调整坐标轴的范围;保存坐标轴的状态。3.设置图形标题MATLAB中有专门的函数title来为图形添加标题,调用这种函数的格式是

10、:(1)title(string)设置当前绘图区的标题为字符串string的值。(2)title(.,PropertyName,PropertyValue,.)可以在添加或设置标题的同时,设置标题的属性,如字体、颜色、加粗等。例2图形标注函数title使用实例。利用title函数为图形添加标题。解:在命令窗口输入下面的代码x=0:0.05:10;y=exp(-0.2*x).*cos(x);plot(x,y)title(ite0.2xcos(x),FontWeight,Bold)执行程序后,可以得到2-18所示结果图形:4.在图形中显示文字MATLAB允许用户在图形的任意位置加注一串文字。加注文

11、字的时候,MATLAB提供了两种不同确定文字位置的操作方式:(1)用坐标轴确定文字位置;(2)用鼠标确定文字位置。MATLAB允许用户在图形窗口的任意位置用低级命令书写一串字符。该方式的格式是text(x,y,string,option),主要功能是在图形指定坐标位置(x,y)处,写出由string所给出的字符串。坐标(x,y)的单位是由选项参数option决定的。如果不给出该选项参数,则(x,y)坐标的单位与图中的单位是一致的。如果选项参数取为sc,则(x,y)坐标表示规范化的窗口相对坐标,其变化范围为01,即该窗口绘图范围的左下角坐标为(0,0),右上角坐标为(1,1)。例3坐标轴标注函数

12、text使用实例。利用text函数在y=sinx指定位置添加文字。解:在命令窗口输入以下代码x=0:pi/100:2*pi;y=sin(x);plot(x,y)axis(02*pi-1.51.5)line(0,2*pi,0,0)text(0.5,0.85,sin(x)sc)text(0.5*pi,0.5,position)text(1.5*pi,-0.5,negative)3.手工绘图方式手工绘图的关键在于如何选取绘图时的一些关键数据点,如何将这些数据点的坐标值读入变量,然后加以利用。MATLAB提供了用鼠标选取数据点的命令ginput,当在图形窗口中的某一位置按下某个鼠标键(或键盘上除回车之

13、外的任何键)时,ginput将返回该位置的坐标值。x,y=ginputx,y=ginput(n)x,y,button=ginput(n)(1)利用x,y=ginput,当在图形窗口中按下某个鼠标键或某一键盘键时,读取此时鼠标所在位置的一系列坐标值,并将这些坐标值存储到向量x和y中,直到按回车键后才中止该读书过程。(2)利用命令x,y=ginput(n),当在图形窗口中按下某一个鼠标键或某一键盘键时,读取此时鼠标所在位置的一系列坐标值,并将这些坐标值存储到向量x和y中,总共读取n个数据点。(3)命令x,y,button=ginput(n)也可利用鼠标从图形窗口中读取n个数据点,并将这些数据点的坐

14、标值存储到向量x和y中,同时还将读数过程中鼠标的按键情况或键盘的按键情况记录到向量变量button中。在这里需要说明以下问题:在读取第i个数据点时,若按的是鼠标左键,则button(i)=1;若按的是鼠标中键,则button(i)2;若按的是鼠标右键,则button(i)=3;若按的是键盘键,则button(i)存储相应键的ASC。该命令仅仅只是读取了一些数据点,并没有绘制图形。在读取了一些数据点后,我们就可以利用某种方法或按某种或图要求把这些数据点连成一起,从而达到手工绘图的效果。三、结论由上面二维制图我们不难得出以下结论:在matlab中,最基本且应用最为广泛的绘图函数为plot函数,利用

15、它可以在二维平面上绘制出不同的曲线。Plot函数用于绘制xy平面上的线性坐标曲线图需要提供一组x坐标及其各点对应的y坐标,这样就可以绘制出分别以x,y为横纵坐标的二维曲线。Matlab还提供了一些绘图选项,用于确定所绘曲线的线性,颜色和数据点标记符号,它们可以组合使用。数据点可以用向量或矩阵的形式给出,类型可以是实型或复型,在取数据点时一般都是等间隔采样,这对绘制高频率变化的函数不够精确,为提高精度,绘制出比较真实的函数曲线,就不能等间隔取样,而必须在变化率大的区段密集采样,以充分反映函数的变化规律,进而提高图形的真实性。Fplot函数可自适应的对函数进行采样能更好地反映函数变化规律。在mat

16、lab中如果需要绘制出具有不同坐标标度的两个图形,可以使用plotyy函数。这种图形能把函数值具有不同量纲,不同数量级的两个函数绘制在同一坐标中,有利于图形数据的对比分析。同时利用MATLAB语言强大的绘图功能可以精确的绘制出一系列的三维图像。MATLAB提供了一系列的绘图函数,用户不仅不许考虑绘图细节,只需给出一些基本的参数就能得到所需要的图形,这一类函数称为高层绘图函数。除此之外,MATLAB还提供了直接对句柄进行操作的一系列的低层的绘图操作。这类操作将图形的每个元素看做是一个独立的对象,系统给每个对象独立的分配一个句柄,以后可以通过该句柄对改图元素进行操作,而不影响图形的其他部分。高层绘

17、图操作简单明了,方便高效,使用户最常使用的绘图方法,而低层绘图操作控制和表现图形的能力更强,为用户自主绘图创造了条件。其实MATLAB的高层绘图函数都是利用低层绘图函数建立起来的。MATLAB在绘制图形方面更进一步的体现出了它强大的绘图功能。四学习心得Matlab和其它语言不一样,如果抱着把其他语言的思想运用在Matlab里面的话,即使程序运行不出错,也很难把握Matlab的精髓,也就很难发挥Matlab的作用。在接触matlab之后,我发现matlab语法简单,易于绘制图形,编程也非常容易。Matlab是功能强大的科学及工程计算软件,它不但具有矩阵计算为基础的强大数学计算和分析功能,而且还具

18、有丰富的可视化图形表现功能和方便的程序设计能力。Matlab的应用领域极为广泛,除数学计算和分析外,还被广泛用于自动控制、系统仿真、数字信号处理、图形图像分析、数理统计、人工智能、虚拟现实技术、通信工程、金融系统等领域。为了提高程序运行效率,能使用矩阵方法处理的数据尽量用矩阵方法处理,毕竟矩阵处理是Matlab的强项。某些不能用矩阵处理,可设法构造出可以运算的矩阵。当不是很确定某个函数的用法和功能时,除了使用help或demo外,更方便更直接的方法就是自己构造一些简单数据试用一下函数。当使用矩阵运算时,直接看代码不是很容易理解,可把矩阵简单的写在草稿纸上,包括初始矩阵和矩阵的变换结果,然后借助

19、草稿纸上直观的矩阵运算理解整个表达式的意义。设置断点。设置断点最主要的目的就是查看中间变量的值,从中了解整个程序的运算过程。最主要也是最基本的就是对算法的正确理解,理解算法的原理和算法每一步的意义;当理解每一步的意义后,同样的目的可采用不同的方法进行处理。有时可以通过画图来帮助感性的了解数据,这样处理的时候不会太盲目。画图是Matlab又一强项。MATLAB所具有的强大的功能可以使我们解决很多用其他计算机语言不容易解决的问题。MATLAB提供了一系列的绘图函数,用户不仅不许考虑绘图细节,只需给出一些基本的参数就能得到所需要的图形,这一类函数称为高层绘图函数,这学期学习让我感受颇多,这门语言相对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论