《第四讲matlab绘图教学课件教学提纲》由会员分享,可在线阅读,更多相关《第四讲matlab绘图教学课件教学提纲(89页珍藏版)》请在金锄头文库上搜索。
1、第四讲matlab绘图,matlab语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。,matlab语言的绘图功能,不仅能绘制几乎所有的标准图形,而且其表现形式也是丰富多样的。matlab语言不仅具有高层绘图能力,而且还具有底层绘图能力句柄绘图方法。在面向对象的图形设计基础上,使得用户可以用来开发各专业的专用图形。,一、二维绘图,(一)plot最基本的二维图形指令plot的功能:plot命令自动打开一个图形窗口Figure用直线连接相邻两数据点来绘制图形根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上,可自定坐标轴,可把
2、x,y轴用对数坐标表示,如果已经存在一个图形窗口,plot命令则清除当前图形,绘制新图形可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗口多曲线分图绘图;可多窗口绘图可任意设定曲线颜色和线型可给图形加坐标网线和图形加注功能,plot(x,y,s)开关格式,开关量字符串s设定曲线颜色和绘图方式,使用颜色字符串的前13个字母,如yellowyel表示等。或plot(x1,y1,s1,x2,y2,s2,),S的标准设定值如下:,字母颜色标点线型y黄色点线m粉红圈线c亮蓝线r大红字线g绿色实线b蓝色星形线w白色:虚线k黑色(-)点划线,matlab6.1线形:+|o|*|.|x|square|diamo
3、nd|v|pentagram|hexagramsquare正方形diamond菱形pentagram五角星hexagram六角星,1.单窗口单曲线绘图,例1:x=0,0.48,0.84,1,0.91,0.6,0.14x1,x2,x3,x4,x5,x6,x7,plot(x),2.单窗口多曲线绘图,例2: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),y,y1,y2,例3:y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);y3=cos(t);y4=cos(t+0.25);y
4、5=cos(t+0.5);plot(t,y,y1,y2,y3,y4,y5),y3=cos(t);y4=cos(t+0.25);y5=cos(t+0.5);plot(t,y3);holdon;plot(t,y4);plot(t,y5);,x=peaks;plot(x)x=1:length(peaks);y=peaks;plot(x,y),3.单窗口多曲线分图绘图,subplot子图分割命令调用格式:subplot(m,n,p)按从左至右,从上至下排列,行,列,绘图序号,subplot(1,3,1);plot(t,y)subplot(1,3,2);plot(t,y3)subplot(1,3,3);
5、plot(t,y2),subplot(3,1,1);plot(t,y)subplot(3,1,2);plot(t,y3)subplot(3,1,3);plot(t,y2),subplot(position,leftbottomwidthheight),4.多窗口绘图,figure(n)创建窗口函数,n为窗口顺序号。t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y)自动出现第一个窗口figure(2)plot(t,y1)在第二窗口绘图figure(3)plot(t,y2)在第三窗口绘图,5.可任意设置颜色与线型,例4(例
6、2):plot(t,y,r-,t,y1,g:,t,y2,b*),6.图形加注功能,将标题、坐标轴标记、网格线及文字注释加注到图形上,这些函数为:title给图形加标题xlable给x轴加标注ylable给y轴加标注text在图形指定位置加标注gtext将标注加到图形任意位置gridon(off)打开、关闭坐标网格线legend添加图例axis控制坐标轴的刻度,例:t=0:0.1:10y1=sin(t);y2=cos(t);plot(t,y1,r,t,y2,b-);x=1.7*pi;1.6*pi;y=-0.3;0.8;s=sin(t);cos(t);text(x,y,s);title(正弦和余弦
7、曲线);legend(正弦,余弦)xlabel(时间t),ylabel(正弦、余弦)gridaxissquare,2,4,6,8,10,时间t,axis的用法还有:axis(xminxmaxyminymax)用行向量中给出的值设定坐标轴的最大和最小值。如axis(-2205)axis(equal)将两坐标轴设为相等axison(off)显示和关闭坐标轴的标记、标志axisauto将坐标轴设置返回自动缺省值,7.fplot绘制函数图函数,fplot的调用格式:fplot(fun,lims)绘制函数fun在x区间lims=xminxmax的函数图。fplot(fun,lims,corline)以指
8、定线形绘图。x,y=fplot(fun,lims)只返回绘图点的值,而不绘图。用plot(x,y)来绘图。,fplot(sin(x),tan(x),cos(x),2*pi*-11-11)fplot(humps,01,rp),8.ezplot符号函数的简易绘图函数,ezplot的调用格式:ezplot(f)这里f为包含单个符号变量x的符号表达式,在x轴的默认范围-2*pi2*pi内绘制f(x)的函数图ezplot(f,xmin,xmax)给定区间ezplot(f,xmin,xmax,figure(n)指定绘图窗口绘图。,ezplot(sin(x)ezplot(sin(x),cos(y),-4*p
9、i4*pi,figure(2),(二)fill基本二维绘图函数fill的功能:绘制二维多边形并填充颜色例:x=12345;y=41514;fill(x,y,r),(三)特殊二维绘图函数,bar绘制直方图polar绘制极坐标图hist绘制统计直方图stairs绘制阶梯图stem绘制火柴杆图rose绘制统计扇形图comet绘制彗星曲线,errorbar绘制误差棒图compass复数向量图(罗盘图)feather复数向量投影图(羽毛图)quiver向量场图area区域图pie饼图convhull凸壳图scatter离散点图,例,绘制阶梯曲线x=0:pi/20:2*pi;y=sin(x);stairs
10、(x,y),例:阶梯绘图h2=11;1-1;h4=h2h2;h2-h2;h8=h4h4;h4-h4;t=1:8;subplot(8,1,1);stairs(t,h8(1,:);axis(off)subplot(8,1,2);stairs(t,h8(2,:);axis(off)subplot(8,1,3);stairs(t,h8(3,:);axis(off)subplot(8,1,4);stairs(t,h8(4,:);axis(off)subplot(8,1,5);stairs(t,h8(5,:);axis(off)subplot(8,1,6);stairs(t,h8(6,:);axis(of
11、f)subplot(8,1,7);stairs(t,h8(7,:);axis(off)subplot(8,1,8);stairs(t,h8(8,:);axis(off),h2=11;1-1;h4=h2h2;h2-h2;h8=h4h4;h4-h4;t=1:8;fori=1:8subplot(8,1,i);stairs(t,h8(i,:)axis(off)end,例:绘制极坐标绘图t=0:2*pi/90:2*pi;y=cos(4*t);polar(t,y),例:绘制火柴杆绘图t=0:0.2:2*pi;y=cos(t);stem(y),例:绘制直方图t=0:0.2:2*pi;y=cos(t);bar
12、(y),例:绘制彗星曲线图t=-pi:pi/500:pi;y=tan(sin(t)-sin(tan(t);comet(t,y),x=magic(6);area(x),x=1234567;y=0001000;pie(x,y),pie(x,y,North,South,East,West,middle,fa,white),loadseamountscatter(x,y,50,z),a=rand(200,1);b=rand(200,1);c=rand(200,1);scatter(a,b,100,c,p),二、三维绘图,三维绘图的主要功能:绘制三维线图绘制等高线图绘制伪彩色图绘制三维网线图绘制三维曲面
13、图、柱面图和球面图绘制三维多面体并填充颜色,(一)三维线图,plot3基本的三维图形指令调用格式:plot3(x,y,z)x,y,z是长度相同的向量plot3(X,Y,Z)X,Y,Z是维数相同的矩阵plot3(x,y,z,s)带开关量plot3(x1,y1,z1,s1,x2,y2,z2,s2,),二维图形的所有基本特性对三维图形全都适用。定义三维坐标轴大小axis(xminxmaxyminymaxzminzmax)gridon(off)绘制三维网格text(x,y,z,string)三维图形标注子图和多窗口也可以用到三维图形中,例:绘制三维线图t=0:pi/50:10*pi;plot3(t,s
14、in(t),cos(t),r:),(二)三维饼图pie3(43689),(三)三维多边形,fill3=fill三维多边形的绘制和填色与二维多边形完全相同调用格式:fill3(x,y,z,s)与二维相同,例:用随机顶点坐标画出5个粉色的三角形,并用黄色的表示顶点y1=rand(3,5);y2=rand(3,5);y3=rand(3,5);fill3(y1,y2,y3,m);holdon;plot3(y1,y2,y3,yo),(四)三维网格图,mesh三维网线绘图函数调用格式:mesh(z)z为nm的矩阵,x与y坐标为元素的下标mesh(x,y,z)x,y,z分别为三维空间的坐标位置,例,矩阵的三
15、维网线图z=rand(6);0.88080.07290.41680.76940.37750.47760.33810.71010.09640.63520.38260.70860.18950.87910.67470.89650.68760.23800.74310.35940.56260.87840.12170.39100.71890.08990.81300.48650.07680.97590.87920.16100.87820.11310.14330.6288z=round(z)100100010101011110101100101001101001mesh(z);,mesh(z),例:8阶had
16、amard矩阵的网线图,h2=11;1-1;h4=h2h2;h2-h2h8=h4h4;h4-h4111111111-11-11-11-111-1-111-1-11-1-111-1-111111-1-1-1-11-11-1-11-1111-1-1-1-1111-1-11-111-1mesh(h8),三维网线图作图要领,生成坐标X,Y=meshgrid(x,y)表达式点运算Z=X.2+Y.2X,Y是nm的矩阵,维数可任定XnYmZ默认方位角:37。5,俯角30。,nm维,meshgrid网线坐标值计算函数z=f(x,y)根据x,y坐标找出z的高度例:绘制z=x2+y2的三维网线图形x=-5:5;y=x;X,Y=meshgrid(x,y)Z=X.2+Y.2mesh(X,Y,Z),坐标矩阵,坐标向量,纵坐标矩阵,绘图函数,colormap(R,G,B)色图设定函数matlab的颜色数据集合为红、绿、兰三颜色矩阵R,G,B,维数m3r,g,b在01区间连续取值,理论上颜色种类可达无穷多种matlab使用三维向量表示一种颜色,常用颜色