MATLAB m文件和函数_第1页
MATLAB m文件和函数_第2页
MATLAB m文件和函数_第3页
MATLAB m文件和函数_第4页
MATLAB m文件和函数_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

1、matlab与系统仿真,1,matlab提供了强大的图形绘制功能,用户只需制定绘图方式,并提供充足的绘图数据,即可以得到所需的图形,五、绘图功能与技巧,matlab与系统仿真,2,一)二维图形绘制 (二)三维图形绘制 (三)图形可视编辑工具,主要内容,matlab与系统仿真,3,1)简单二维图形绘制 (2)特殊二维图形绘制 (3)二维图形的修饰函数 (4)图形窗口的控制与表现 (5)二维图形绘制流程(总结,一)二维图形绘制,matlab与系统仿真,4,1. plot(y) 当y为一向量,以y的序号作为x轴,按向量y得值绘制曲线,1)绘制简单的二维图形,2. plot(x,y) x,y均为向量,

2、以x为x轴,y为y轴绘制曲线(x,y等长,3. plot(x,y ,option ) 曲线的属性(颜色、粗细。)由option 确定,matlab与系统仿真,5,option选项:线的类型、标记符号、颜色等,线宽 linewidth 例:plot(t,y2,k-,linewidth,5,matlab与系统仿真,6,例1,t=0:0.1:pi; plot(t,matlab与系统仿真,7,例2 :绘制出一个周期内的正弦曲线,语句命令及绘图结果: t=0:0.1:2*pi; y=sin(t); plot(t,y,matlab与系统仿真,8,例3,plot(t,y2,:g) plot(t,y3,xk,

3、t=0:0.1:2*pi; y1=sin(t); y2=cos(t); y3=sin(t).*cos(t); plot(t,y1,matlab与系统仿真,9,1.常用调用格式,2)绘制特殊二维图形,matlab与系统仿真,10,例,t=-pi:0.3:pi; y=1./(1+exp(-t); plot(t,y,尝试: stem(t,y); polar(t,y); stairs(t,y);,matlab与系统仿真,11,matlab与系统仿真,12,给定函数的曲线绘制,plot()函数可以容易地绘制显式表达式的函数, 但隐函数曲线如何绘制,按常规: x=-sqrt(5):0.01:sqrt(5)

4、; y1=sqrt(5-x.2)/3); y2=-sqrt(5-x.2)/3); plot(x,y1,x,y2,如:x2+3y2=5,matlab与系统仿真,13,ezplot ( )函数,ezplot(x2+3*y2-5,matlab与系统仿真,14,matlab提供图形函数,专门用于对由plot命令所画 图形进行修饰,3)二维图形的修饰函数,函数并非图形修饰唯一方法菜单、右键快捷菜单、属性设置页也可以,matlab与系统仿真,15,1. 坐标轴范围的设定:axis(xmin,xmax,ymin,ymax,2. 加坐标轴名称: xlabel(string), ylabel(string,3.

5、 给图形加标题: title(string,4. 加图例标注 : legend(string1, string2,5. 加网格: grid on , grid off,6. 加普通标注: gtext(string),在弹出的图形窗口中, 选择地点,单击鼠标,matlab与系统仿真,16,matlab与系统仿真,17,例:原图,t=0:0.1:2*pi; y1=sin(t); y2=cos(t); plot(t,y1,r:,t,y2,g*,matlab与系统仿真,18,将图形的x轴的大小范围限定在0,2pi之间, y轴的大小范围限定在-2,2之间; 2) x、y坐标轴分别标注为“弧度值”、“函数

6、值”; 3) 图形标题标注为“正弦曲线和余弦曲线”; 4) 添加图例标注,标注字符分别为“y1”、“y2”; 5) 给图形添加网格线; 6) 在两条曲线上分别标注文本“y1=sin(t)”、 “y2=cos(t,要求:进一步修饰例2.16的图形,实现以下要求,matlab与系统仿真,19,解,help line line(起点横坐标,终点横坐标,起点纵坐标,终点纵坐标), 例:line(1,2,3,4)将画出(1,3)到(2,4)的一条直线,而不是(1,2)到(3,4,matlab与系统仿真,20,最后结果(注意gtext指令,要产生这个箭头, 一.可以insetarrow 二.可以通过函数实

7、现,详见补充知识的文件夹,如下图,请大家看 同学备注,matlab与系统仿真,21,1. 创建或打开图形窗口,4)图形窗口的控制与表现,在命令窗口运行绘图指令,自动创建(当前窗口,唯一); figure命令,创建另一窗口(当前),保留原窗口; 菜单建立新窗口; clf命令,清除当前窗口所有内容,matlab与系统仿真,22,图形重叠(同一坐标系中绘制多幅图形,1)plot命令会清屏,但可在一个plot命令中实现,plot(x,y1,option1, x,y2,option2,) x为公共x轴,分别以y1, y2为y轴绘制多条曲线, 每条曲线的属性由相应的option 确定,matlab与系统仿

8、真,23,例: t=0:0.1:2*pi; y1=sin(t); y2=cos(t); y3=sin(t).*cos(t); plot(t,y1,-,t,y2,:g,t,y3,xk,matlab与系统仿真,24,思考:但很多实验情况下,实际上是对同一个变量进行测量,并将数据进行绘图比较,matlab与系统仿真,25,2) hold on、 hold off指令,hold on:保留当前窗口图形; hold off:解除hold on,例: t=0:0.1:2*pi; y1=sin(t); y2=cos(t); y3=sin(t).*cos(t); plot(t,y1,-) hold on pl

9、ot(t,y2,:g) plot(t,y3,xk) line(0,8,0,0) hold off,matlab与系统仿真,26,3. 图形窗口分割,利用subplot()函数将整个图形窗口分割成若干个子图形部分,然后在每个部分用不同函数绘制不同曲线,subplot(m,n,p) :将当前窗口分割成m行、n列,并且当前在其中的第p个区域绘图。 绘图区域编号原则:“从左到右,从上到下”。 允许每个子窗口不同的坐标系,matlab与系统仿真,27,subplot(3,2,2) t=0:0.1:2*pi; y1=sin(t); plot(t,y1,-) subplot(3,2,4) t=-pi:0.1

10、:pi; y2=sin(t); plot(t,y2, xk,例,matlab与系统仿真,28,matlab图形窗口控制函数(汇总,matlab与系统仿真,29,5)二维图形绘制流程图,输入图形显示的 相关函数,选择图形显示区域,调用相关的绘图指令,设置图形的属性,图形的修饰,保存打印输出,matlab与系统仿真,30,x=0:0.05:pi; y1=5*sin(2*x); y2=4*cos(4*x); subplot(3,1,1); plot(x,y1); axis(0 pi -5.5 5.5); grid on; xlabel(time); ylabel(amplitude); title(

11、y=5sin(2x,相关函数,图形显示区域,绘图指令、属性设置,图形修饰,举例,matlab与系统仿真,31,subplot(3,1,2); plot(x,y2); axis(0 pi -5.5 5.5); grid on; xlabel(time); ylabel(amplitude); title(y=4cos(4x); subplot(3,1,3); plot(x,y1,-.or,x,y2,-b+); xlabel(time); ylabel(amplitude); title(characteristic curve,matlab与系统仿真,32,例:可以用subplot()函数将整个

12、图形窗口分割成若干个子图形部分,然后在每个部分用不同函数绘制不同曲线,t=-pi:0.3:pi;y=1./(1+exp(-t); subplot(221),plot(t,y); title(plot(t,y) subplot(222),stem(t,y); title(stem(t,y) subplot(223),polar(t,y); title(polar(t,y) subplot(224),stairs(t,y); title(stairs(t,y,matlab与系统仿真,33,二)三维图形绘制,1)三维曲线的基本绘图 (2)三维网格曲面的绘制 (3)图像显示与处理,matlab与系统仿

13、真,34,调用格式 plot3(x1,y1,z1,option1, x2,y2,z2,option2,1)三维曲线的基本绘图,参数意义与二维绘图命令相似。 以逐点连折线的方式绘制三维折线图,当各个数据点的间距较小时,绘制的即三维曲线。 也可用各种特殊绘图函数。 也可用各种图形修饰函数,但要求多考虑一个z轴方向,matlab与系统仿真,35,t=0:pi/50:8*pi; x=sin(t); y=cos(t); plot3(x,y,t); stem3(x,y,t,例:三维螺旋线绘制,matlab与系统仿真,36,三维网格曲面图所构成的网格状表面由x-y平面上的矩形栅格及相应的z坐标构成,相邻点之

14、间用直线连接,2)三维网格曲面的绘制,等高图 密度图 建筑立面,对于显示大型数据矩阵或双变量的函数是很有用,matlab与系统仿真,37,即定义四边形各个顶点的三维坐标值,1. 栅格数据点的产生,一般先知道(x,y),再利用函数公式计算z的坐标; 二维坐标(x,y)是种栅格形的数据点,由meshgrid命令产生,格式 meshgrid(x,y) :x,y是向量,表示坐标范围,matlab与系统仿真,38,x=-2:0.1:2; y=x; x,y=meshgrid(x,y),例,matlab与系统仿真,39,2. 绘制三维网格曲面,matlab与系统仿真,40,z=x.*exp(-x.2-y.2

15、); mesh(x,y,z) grid on,matlab与系统仿真,41,例:绘制由函数 表示的曲面图形,matlab与系统仿真,42,matlab与系统仿真,43,imread() 读取放在当前工作目录中的图像文件函数, 保存为3维数组数据; image () 读取保存的3维图像数据并显示图像,3)图像显示与处理,例: w=imread(pic.jpg); 图形文件存当前目录 image(w,matlab与系统仿真,44,w是三维数据,由三层矩阵叠放而成,分别存放表示红、绿、蓝三原色分量,尝试:改变图片的色调? 1)将照片变为黄颜色基调; 2)将照片变为底片效果,matlab与系统仿真,4

16、5,w(:,:,3)=0; image(w,image(uint8(255-double(w,matlab与系统仿真,46,三) matlab的图形可视化编辑工具,图形管理窗口除了简单的显示图形功能外,本身就是一个 功能强大的图形可视编辑工具,可实现的功能主要有,1) 通用的图形文件管理功能,如保存、打开、新建图形文件等; 2) 通用的图形效果编辑功能,如图形放大、缩小、旋转、对齐等; 3) 图形对象插入功能,如插入坐标轴名称、图形标题、图例标注、 线段、文字等; 4) 独立地设置窗口中各图形对象属性功能,如线段的类型、颜色、 粗细等,matlab与系统仿真,47,1)选择菜单insert,三

17、种编辑图形方法,t=0:0.1:2*pi; y1=sin(t); y2=cos(t); y3=sin(t).*cos(t); plot(t,y1,-) hold on plot(t,y2,:g) plot(t,y3,xk) hold off,matlab与系统仿真,48,单击图形窗口工具栏中的编辑图标(箭头)即可进入图形编辑状态,2)右键快捷菜单,用户任意选择特性对象,出现选中标志,单击右键,可进行选项设置,2012a,matlab与系统仿真,49,在方法(2)的快捷菜单中,选择“属性”项,可进行如下设置环境,3)“属性”菜单项,鼠标在图形中非图形对象区域单击,将显示图形修饰对话框,matla

18、b与系统仿真,50,matlab与系统仿真,51,matlab与系统仿真,52,第二章回顾,2.1 matlab的工作环境,matlab程序主界面 : 菜单、工具栏、命令窗口、 当前路径浏览器、工作空间浏览器、 命令历史浏览器,matlab与系统仿真,53,matlab两种编程方式比较,文本编辑窗口,matlab与系统仿真,54,2.2 matlab语言的基本元素,变量: 变量的命名应遵循如下规则,赋值语句,矩阵的表示:一般、等差输入、特殊 、矩阵元素,matlab与系统仿真,55,2.3 矩阵的运算,代数运算,matlab与系统仿真,56,函数运算,prod(a,min(a,matlab与系统仿真,57,数组(元素群)运算,matlab与系统仿真,58,关系运算,matlab与系统仿真,59,逻辑运算,matlab与系统仿真,60,2.4 matlab的程序流程控制,循环控制结构,条件转移结构,matlab与系统仿真,61,2.5 m

温馨提示

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

评论

0/150

提交评论