matlab绘图指导.doc
上传人:sy****28 上传时间:2024-09-13 格式:DOC 页数:8 大小:31KB 金币:14 举报 版权申诉
预览加载中,请您耐心等待几秒...

matlab绘图指导.doc

matlab绘图指导.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

14 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

中国科学技术大学电子工程与信息科学系多媒体通信实验室(Copyright2002)BMatLabMatlab在科学研究和工程应用中,往往要进行大量的数学计算,这些运算一般来说难以用手工精确和快捷地进行,而要借助计算机编制相应的程序做近似计算。目前流行用Basic、Fortran和c语言编制计算程序,既需要对有关算法有深刻的了解,还需要熟练地掌握所用语言的语法及编程技巧。在本讲义的附录一中,提供了一部分算法的C代码,但这些功能代码段仅仅是在数字信号处理过程中一个很小的部分。一方面实验时间有限,另一方面,各个专业的同学对编程有不同程度的要求。往往实验的大部分时间用来调试程序,真正用于理解课程内容的时间相对被压缩。为克服上述困难,美国Mathwork公司于1967年推出了"MatrixLaboratory"(缩写为Matlab)软件包,并不断更新和扩充,是一种功能强、效率高便于进行科学和工程计算的交互式软件包。其中包括:一般数值分析、矩阵运算、数字信号处理、建模和系统控制和优化等应用程序,并集应用程序和图形于一便于使用的集成环境中。在此环境下所解问题的Matlab语言表述形式和其数学表达形式相同,不需要按传统的方法编程。虽然Matlab作为一种新的计算机语言,但由于使用Matlab编程运算与人进行科学计算的思路和表达方式完全一致,所以不象学习其它高级语言--如Basic、Fortran和C等那样难于掌握,用Matlab编写程序犹如在演算纸上排列出公式与求解问题。Matlab语言具有编程效率高,易学易懂;使用方便;绘图方便等一系列优点。MatLab有关MatLab运算、函数、逻辑控制等可以参考一些Matlab的书籍、或参阅多媒体通信实验室主页中有关MatLab的部分,在本讲义中不再赘述。这里介绍以下MatLab下二维图形的绘制。下表是MatLab中不同绘图函数的名称和功能简介:Bar长条图errorbar图形加上误差范围Fplot较精确的函数图形polar极座标图Hist累计图rose极座标累计图Stairs阶梯图stem针状图Fill实心图feather羽毛图Compass罗盘图Quiver向量场图Contour在x-y平面绘制等位线图Gplot绘拓扑图Loglog双对数坐标曲线Pcolor伪彩图Semilogxx轴对数坐标曲线Semilogyy轴对数坐标曲线如果您在阅读过程中发现疏漏和错误,请您尽快和编者取得联系network@ustc.edu.cncxh@ustc.edu.cn中国科学技术大学电子工程与信息科学系多媒体通信实验室(Copyright2002)Stem各种不同的绘图函数分别适用于不同的场合,使用“stem”绘制针状图最简单,从附录中提供的MatLab原代码可以看出,只需要将需要绘制的数据存放在一个数组中,然后将这个数组作为参数传递给“stem”函数就可以得到输出图形。例如,下面的代码可以绘制正弦函数的图形:n=1:50;%定义序列的长度是50x=zeros(1,50);%注意:MATLAB中数组下标从1开始x(1)=1;%冲击函数stem(x);%绘制函数图形得到的函数图形如下图所示:Plot当然,在某些时候针状图的显示效果并不是非常理想,这时候,我们通常采用“plot”函数绘制图形。“plot”函数功能非常强大,输入以下内容x=-pi:.1:pi;y=sin(x);plot(x,y)可以绘制正弦函数的图形如下图所示:如果输入以下代码,则可以同时得到正弦函数和余弦函数的图形。plot(x,sin(x),x,cos(x));%同时绘制两条曲线如果您在阅读过程中发现疏漏和错误,请您尽快和编者取得联系network@ustc.edu.cncxh@ustc.edu.cn中国科学技术大学电子工程与信息科学系多媒体通信实验室(Copyright2002)在绘制图形的过程中我们可以用其他函数调整图形坐标、坐标轴标题等和图形有关的信息,以下是一个操作示例:x=linspace(0,2*pi,100);%100个点的x座标closeall;%关闭所有已经打开的图形视窗plot(x,sin(x),x,cos(x));%同时绘制两条曲线图形完成後,我们可用axis([xmin,xmax,ymin,ymax])函数来调整图轴的范围:axis([0,6,-1.2,1.2]);