matlab编程绘图方法课件_第1页
matlab编程绘图方法课件_第2页
matlab编程绘图方法课件_第3页
matlab编程绘图方法课件_第4页
matlab编程绘图方法课件_第5页
已阅读5页,还剩65页未读, 继续免费阅读

下载本文档

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

文档简介

1、1Matlab编程绘图延边大学 经济管理学院主讲:崔基哲第1页,共70页。2Matlab语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。信息管理与信息系统专业 崔基哲第2页,共70页。3Matlab的学习方法必须做大量的练习,熟悉其中的函数联系和自己的课题相关,深刻的体会多看帮助文件,又一本好的参考书记住:Matlab可以做很多事情信息管理与信息系统专业 崔基哲第3页,共70页。图形可视化的优点 以图形或图表的形式表现实验及科学计算等的结果可以给人更直观的感受,自变量与 因变量的关系、变量的分布趋势一目了然。GUI(Graphical Use

2、r Interfaces)可以使得用户只需利用鼠标等便捷的方式与计算机交互信息,而无需记忆大量繁琐的命令。信息管理与信息系统专业 崔基哲第4页,共70页。S=270,270,280,280,280,280,290,290,300,300,300,310, 320,320, 320,340,340,340,360,380,400S与N之间的关系及趋势?N=1064100,896100,391660,1078680,1360140,1602670,827340,314470,157660,199790,261120,263580,95580,98110,165650,61860,68690,160

3、940,59100,66230,34870信息管理与信息系统专业 崔基哲第5页,共70页。信息管理与信息系统专业 崔基哲第6页,共70页。Matlab及其应用7简单例子1x = -pi:0.01:pi; plot(x,cos(x), grid on第7页,共70页。Matlab及其应用8简单例子2y=2*sin(0.5*pi)/(1+sqrt(3)第8页,共70页。Matlab及其应用9简单例子3X,Y = meshgrid(-3:.125:3);Z = peaks(X,Y);meshc(X,Y,Z);axis(-3 3 -3 3 -10 5)第9页,共70页。Matlab及其应用10简单例子

4、4A=1,2,3;4,5,6;7,8,9A=1:3;4:6;7:9.*是元素对元素的运算第10页,共70页。11单窗口多曲线绘图t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y,t,y1,t,y2)信息管理与信息系统专业 崔基哲第11页,共70页。Matlab及其应用12流程控制为了便于应用,MATLAB提供了一些流程控制的命令。这些命令对脚本编写带来了一些方便,但是需要注意的是,尽量不要使用这些流程控制命令,尤其是循环控制命令。1 for循环for循环允许一组命令以固定的次数重复,它的一般形式是for x=array

5、 commandendfor 和end之间的命令串按数组array的每一列执行一次,直到n次后终止。第12页,共70页。Matlab及其应用131 For循环应当注意的一些方面for循环不能使用内部重新赋值循环变量而终止;for循环内部接受任何有效的MATLAB数组;for循环可以嵌套;只要有矩阵形式可以解决的问题,不要使用for循环。使用for循环的算法执行很慢,一个好的MATLAB算法部应当出现循环语句。循环可以使用break跳出,但只跳出所在的循环,不跳出整个嵌套结构。第13页,共70页。Matlab及其应用142 while循环与for循环以固定的次数求一组指令相反,while循环以不

6、定的次数求一组语句的值。While循环的一般形式为:while expression commondsend只要表达式expression里的所有元素为真,就执行命令串commands。通常表达式求值给一个标量值,单数组值也同样有效。第14页,共70页。Matlab及其应用153 if-else-end结构很多情况下,命令的序列必须根据关系的检验有条件的执行,它由if-else-end结构提供。它的结构如下:if expression1 commands1else if expression2 commands2else if else if commandsend第15页,共70页。Matl

7、ab及其应用16简单例子5第16页,共70页。Matlab及其应用17简单例子6第17页,共70页。18二维图形plot函数绘制二维曲线,常用格式有:1. plot(x):缺省自变量的绘图格式,x可为向量或矩阵。2. plot(x, y):基本格式,x和y可为向量或矩阵。3. plot(x1, y1, x2, y2,):多条曲线绘图格式,在同一坐标系中绘制多个图形。4. plot(x, y, s): 开关格式,开关量字符串s设定了图形曲线的颜色、线型及标记符号。信息管理与信息系统专业 崔基哲第18页,共70页。延边大学 信息管理专业19例 :plot(t,y,r-,t,y1,g:,t,y2,b

8、*)可任意设置颜色与线型第19页,共70页。20图形颜色、标记和线形参数表符号表示的颜色符号代表的线型c 青色(cyan)实线(缺省值)m品红色(magenta)-短划线y黄色(yellow):点连线(虚线)r红色(red).点划线g绿色(green)none不画线b蓝色(blue)w白色(white)k黑色(black)信息管理与信息系统专业 崔基哲第20页,共70页。21图形颜色、标记和线形参数表D S X . * O 标记符号 无符号标记 None 六角星符号(hexagram) H 五角星符号(pentagram)P 朝左的三角形符号 朝右的三角形符号 朝下的三角符号 朝上的三角符号

9、菱形标记(diamond) 正方形标记(square) 叉型标记 点标记 星号标记 圆圈标记 加号标记 说明 说明 标记符号 信息管理与信息系统专业 崔基哲第21页,共70页。 点和线的基本属性图形的属性信息管理与信息系统专业 崔基哲第22页,共70页。23应用举例7plot画一个圆程序如下:R=2;t=0:pi/20:2*pi;x=R*sin(t);y=R*cos(t)plot(x,y,b:),grid信息管理与信息系统专业 崔基哲第23页,共70页。24例8:序列函数、sin函数 x=3 5 7 6 12 24 15 33 6 9 7 2; plot(x) %绘制以序号为横坐标,元素值为纵

10、坐标的曲线 x=0:pi/10:2*pi; y=sin(x); plot(x,y) %绘制以x为横坐标,y为纵坐标的曲线信息管理与信息系统专业 崔基哲第24页,共70页。25例9:绘制 x=linspace(0,7); y1=sin(2.*x); y2=sin(x.2); y3=(sin(x).2;%曲线1:红色实线,+号显示数据点%曲线2:黑色点线,*号显示数据点%曲线3:蓝色虚线,上三角形显示数据点 plot(x, y1, r+-, x, y2, k*:, x, y3, b-)信息管理与信息系统专业 崔基哲第25页,共70页。26图形修饰与控制1. title 给图形加标题2. xlabl

11、e/ylable 给x轴/y轴加标注3. text 在图形指定的任意位置加标注4. gtext 利用鼠标将标注加到图形任意位置5. grid on/off、grid 打开/关闭坐标网格线、切换方式6. legend 添加图例7. axis 控制坐标轴刻度8. hold on/off、hold图形叠加/叠加撤除、切换方式9. subplot显示多窗口(子图)10.figure多窗口绘图信息管理与信息系统专业 崔基哲第26页,共70页。27例:绘制正弦和余弦曲线,并加入网格和标注t=0:0.1:10;y1=sin(t);y2=cos(t);plot(t,y1,r,t,y2,b- -);x=1.7*

12、pi;1.6*pi;y=-0.3; 0.7;s=sin(t);cos(t);text(x, y, s);指定位置加标注title(正弦和余弦曲线); 标题legend(正弦,余弦)%添加图例注解xlabel(时间)% x坐标名ylabel(正弦&余弦)% y坐标名grid on%添加网格axis square%将图形设置为正方形信息管理与信息系统专业 崔基哲第27页,共70页。28图形修饰与控制subplot subplot在图形窗口绘制子图形调用:subplot(m,n,p) 图形窗口分成mn个子窗口,并将第p子窗口作为当前窗口。 子窗口的排列顺序为左上角为第一窗口信息管理与信息系统专业 崔

13、基哲第28页,共70页。t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);subplot(1,3,1);plot(t,y);subplot(1,3,2);plot(t,y1);subplot(1,3,3);plot(t,y2);第29页,共70页。subplot(3,1,1);plot(t,y);subplot(3,1,2);plot(t,y1);subplot(3,1,3);plot(t,y2);第30页,共70页。313.3 图形修饰与控制subplot subplot在图形窗口绘制子图形信息管理与信息系统专业 崔基哲第31页,共7

14、0页。323.3 图形修饰与控制subplot x=-10:0.01:10; y1=x.*cos(x); y2=-x.*sin(x)+cos(x); y3=sin(x).*cos(x); y4=(sin(x).2).*(cos(x).2); subplot(2,2,1); % 在左上角绘图 plot(x,y1); title(第一个子图) subplot(2,2,2); % 在右上角绘图 plot(x,y2); title(第二个子图) subplot(2,2,3); % 在左下角绘图 plot(x,y3,mo); title(第三个子图) subplot(2,2,4); % 在右下角绘图 p

15、lot(x,y4,g*); title(第四个子图) 信息管理与信息系统专业 崔基哲第32页,共70页。333.3 图形修饰与控制figure figure用于打开多个图形窗口 plot命令绘图时,是以缺省方式创建1号窗口。 进行多窗口绘图时,需要按照窗口序号创建窗口,才可以在指定窗口绘图。如:x=linspace(-10,10);y1=% 略y2=% 略figure(1) %创建第1号窗口plot(x,y1,r)figure(2) %创建第2号窗口plot(x,y2,-.b*) 第33页,共70页。34MATLAB的图形编辑窗口第34页,共70页。35 采用hold函数对图形进行比较显示,可

16、继续绘制新图,并按需自动调整刻度。 图形修饰与控制hold调用1. hold on保留当前图形及坐标的全部属性,使得随后绘制的图形附加到已存在的图形上去。 调用2. hold off 返回hold的缺省模式,随后的作图命令“plot”将抹去当前已有图形,在绘制新的图形前重新设置坐标轴的属性。 调用3.hold 切换hold的on 和off两种状态。 第35页,共70页。36cleart=0:pi/10:2*pi;y1=sin(t);y2=cos(t);y3= sin(t)-cos(t);plot(t,y1, bo,);hold on; %后续图形叠加显示plot(t,y2, -.b);plot

17、(t,y3, -m);图形修饰与控制hold例如:信息管理与信息系统专业 崔基哲第36页,共70页。37采用图形窗口分割方法进行比较显示 cleart=0:pi/10:2*pi;y1=sin(t);y2=cos(t);y3=cos(t+pi/2);y4=cos(t+pi); %将图形窗口分割成两行两列, 要画的图形为第1行第1列subplot(2,2,1);plot(t,y1);subplot(2,2,2); plot(t,y2);subplot(2,2,3); plot(t,y3);subplot(2,2,4);plot(t,y4);信息管理与信息系统专业 崔基哲第37页,共70页。特殊二维

18、绘图函数 bar 绘制直方图 polar 绘制极坐标图 hist 绘制统计直方图 stairs 绘制阶梯图 stem 绘制火柴杆图 rose 绘制统计扇形图 comet 绘制彗星曲线 area 区域图 pie 饼图信息管理与信息系统专业 崔基哲第38页,共70页。 条形图可以显示矢量数据和矩阵数据,如果用户需要表现跨时间段的运算结果、不同数据的比较结果以及部分相对于整体比较结果时,常会用到条形图绘制离散数据。MATLAB中提供了条形图绘制函数bar,函数bar有4种,绘制和编辑条形图信息管理与信息系统专业 崔基哲第39页,共70页。t=0:0.2:2*pi; y=cos(t); bar(y)绘

19、制直方图信息管理与信息系统专业 崔基哲第40页,共70页。x=0:pi/20:2*pi;y=sin(x);stairs(x,y)绘制阶梯曲线信息管理与信息系统专业 崔基哲第41页,共70页。t=0:2*pi/90:2*pi;y=cos(4*t);polar(t,y)极坐标绘图信息管理与信息系统专业 崔基哲第42页,共70页。t=0:0.2:2*pi; y=cos(t); stem(y)火柴杆绘图信息管理与信息系统专业 崔基哲第43页,共70页。t= -pi:pi/500:pi;y=tan(sin(t)-sin(tan(t); comet(t,y)彗星曲线图信息管理与信息系统专业 崔基哲第44页

20、,共70页。x=magic(6);area(x)面积图信息管理与信息系统专业 崔基哲第45页,共70页。x=1 2 3 4 5 6 7;y=0 0 0 1 0 0 0;pie(x,y)饼图信息管理与信息系统专业 崔基哲第46页,共70页。Matlab及其应用474. 二维图形绘制命令汇总area填充的函数折(曲)线图fplot数值函数二维曲线bar直方图hist向量的统计直方图barh竖直直方图pareto带有标准的直方图bar3三维直方图pie饼图bar3h竖直三维直方图pie3三维饼图comet彗星轨迹状的图形plotmatrix矩阵折(曲)线图errorbar误差棒图ribbon带状图e

21、zplot符号函数的二维曲线scatter点图feather沿x轴分布的复数向量图stem火柴杆图fill平面多边形填色stairs阶梯图quiver箭图zoom图形缩放第47页,共70页。48三维图形1.三维曲线图plot3函数可以绘制三维曲线: (1) plot3(x1, y1, z1, s1, x2, y2, z2, s2)2.三维网格图mesh函数为数据点绘制网格线:(1) mesh(z) z为nm的矩阵,x与y坐标为元素的下标位置(2) mesh(x, y, z) x, y, z分别为三维空间的坐标位置3.三维曲面图三维曲面的绘图是由surf函数完成的,用法和mesh类似。信息管理与

22、信息系统专业 崔基哲第48页,共70页。49三维曲线图 plot3调用格式: plot3(x, y, z1)TIP: (1)当x,y,z 为向量时,将以三个向量中的相应元素X、Y、Z坐标绘制出数据点,然后再用线把这些点连接起来得到一条空间曲线; (2)当x,y,z为同维矩阵时,则分别取x,y,z中的对应列,画出多条曲线; (3)plot3与函数plot一样,也可对图形的绘制进行控制。 如: plot3(x1,y1,z1, s1,x2,y2,z2, s2,)信息管理与信息系统专业 崔基哲第49页,共70页。延边大学 信息管理专业50三维饼图pie3(4 3 6 8 9)第50页,共70页。51三

23、维网格图 mesh调用格式:(1) mesh(z) z为mn的矩阵,x与y分别为(1:m,1:n) (2) mesh(x, y, z) x, y, z分别为同阶矩阵TIP:(1)在三维空间中画出一个彩色的、带有线框的表面视图,MATLAB同时将该视图在三维空间中显示出来。 (2)在曲面的网格图基础上,如果对网线间的曲面小块进行填充,就成了表面图(也称曲面图)。 (3)一般是先用函数meshgrid创建矩阵X和矩阵Y,利用函数meshgrid得到的数据点是均匀分布的,然后可以继续用函数mesh等进行绘制图形。 信息管理与信息系统专业 崔基哲第51页,共70页。52三维网格图 mesh x=0:0

24、.1:10; x,y=meshgrid(linspace(0,10),linspace(0,10); z=(1./(x.3-2.*x+5)+(1./(y.3-2.*y+5); mesh(x,y,z); xlabel(X axis); ylabel(Y axis); zlabel(Z axis); grid on 例如:信息管理与信息系统专业 崔基哲第52页,共70页。53三维曲面图 surf调用格式:surf(x,y,z) TIP:(1)该格式将创建一个彩色的、由多个小面组成的表面视图,MATLAB同时将该视图在三维空间中显示出来。 (2)通常,这些小面是四角形的,每个都有固定的颜色,而边界是

25、黑色网格线。 信息管理与信息系统专业 崔基哲第53页,共70页。543.4.3 三维曲面图 surf例:用surf函数绘制彩色曲面图。 x=-8:0.5:8; y=x; X,Y=meshgrid(x,y); r=sqrt(X.2+Y.2)+eps; Z=sin(r)./r; surf(X,Y,Z); title(帽子形状) 信息管理与信息系统专业 崔基哲第54页,共70页。55绘制x、y、z均为矢量时的三维曲线图 t=0:pi/50:10*pi; x=exp(-t/15).*sin(2*t); y=exp(-t/15).*cos(2*t); z=t; plot3(x,y,t) axis squ

26、are; grid on信息管理与信息系统专业 崔基哲第55页,共70页。56绘制指定线型、颜色及标记点的三维曲线图 t=0:pi/20:5*pi; plot3(sin(t),cos(t),t,:*r)信息管理与信息系统专业 崔基哲第56页,共70页。57例:分别用mesh函数和surf函数绘制高斯矩阵z=peaks(40); % 创建双峰函数mesh(z);% 网格线 figure%产生新的图形窗口surf(z); %着色表面图信息管理与信息系统专业 崔基哲第57页,共70页。58观察点clearz=peaks(40);subplot(2,2,1); mesh(z);%绘制子图1(默认视点)

27、subplot(2,2,2);mesh(z);view(-15,60); %指定子图2的视点subplot(2,2,3);mesh(z);view(-90,0); %指定子图3的视点subplot(2,2,4);mesh(z);view(-7,-10); %指定子图4的视点信息管理与信息系统专业 崔基哲第58页,共70页。colormap( R,G,B) 色图设定函数Matlab 的颜色数据集合为红、绿、兰三颜色矩阵R,G,B,维数m3r,g,b在0 1区间连续取值,理论上颜色种类可达无穷多种Matlab使用三维向量表示一种颜色,常用颜色数据见下表信息管理与信息系统专业 崔基哲第59页,共70

28、页。 饱和色 0 0 0 黑色 0 0 1 兰色 0 1 0 绿色 0 1 1 浅兰 1 0 0 红色 1 0 1 粉红 1 1 0 黄色 1 1 1 白色 调和色0.5 0.5 05 灰色0.5 0 0 暗红色1 0.62 0.4 铜色0.49 1 0.8 浅绿0.49 1 0.83 宝石兰信息管理与信息系统专业 崔基哲第60页,共70页。调用格式: surf(x,y,z) 绘制三维曲面图,x,y,z 为图形坐标向量例:X,Y,Z=peaks(30)surf(X,Y,Z) peaks为Matlab自动生成的三维测试图形信息管理与信息系统专业 崔基哲第61页,共70页。 x=-5:5; y=x; X,Y=meshgrid(x,y); Z=X.2+Y.2; surf(X,Y,Z) ; 信息管理与信息系统专业 崔基哲第62页,共70页。 surfc(X,Y,Z) 带等高线的曲面图 X,Y,Z=peak

温馨提示

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

评论

0/150

提交评论