《matlab程序设计》第四和五章matlab绘图

上传人:y****3 文档编号:119555331 上传时间:2022-07-15 格式:PPT 页数:114 大小:1.42MB
收藏 版权申诉 举报 下载
《matlab程序设计》第四和五章matlab绘图_第1页
第1页 / 共114页
《matlab程序设计》第四和五章matlab绘图_第2页
第2页 / 共114页
《matlab程序设计》第四和五章matlab绘图_第3页
第3页 / 共114页
资源描述:

《《matlab程序设计》第四和五章matlab绘图》由会员分享,可在线阅读,更多相关《《matlab程序设计》第四和五章matlab绘图(114页珍藏版)》请在装配图网上搜索。

1、 不仅能绘制几乎所有的标准图形,而且其表现形式也是丰富多样的。matlab语言不仅具有高层绘图能力,而且还具有底层绘图能力句柄绘图方法。在面向对象的图形设计基础上,使得用户可以用来开发各专业的专用图形。(一)plot 最基本的二维图形指令plot的功能:plot命令自动打开一个图形窗口Figure 用直线连接相邻两数据点来绘制图形 根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上,可自定坐标轴,可把x,y 轴用对数坐标表示 如果已经存在一个图形窗口,plot命令则清除当前图形,绘制新图形 可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗口多曲线分图绘图;可多窗口绘图 可任

2、意设定曲线颜色和线型 可给图形加坐标网线和图形加注功能 plot(x)缺省自变量绘图格式,x为向量,以x元素值为纵坐标,以相应元素下标为横坐标绘图;plot(x,y)基本格式,以y(x)的函数关系作出直角坐标图,如果y为nm的矩阵,则以x 为自变量,作出m条曲线;plot(x1,y1,x2,y2)多条曲线绘图格式.plot(x,y,s)开关格式,开关量字符串s设定曲线颜色和绘图方式,使用颜色字符串的前13个字母,如 yellowyel表示等。或plot(x1,y1,s1,x2,y2,s2,)字母 颜色 标点 线型 y 黄色 点线 m 粉红 圈线 c 青 线 r 红 字线 g 绿色 实线 b 蓝

3、色 星形线 w 白色 :点线 k 黑色 (-)点划(虚)线.实心点 d 菱形符(diamond)+十字符 h 六角星(hexagram)*八线符 o 空心圆圈 朝上三角符 p 五角星(pentagram)朝下三角符 s 方块符(square)朝左三角符 x 叉字符 朝右三角符允许设置的数据点型例1:x=0,0.48,0.84,1,0.91,0.6,0.14 plot(x)例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)x=peaks;plot(x)x=1:length(peaks);y=pe

4、aks;plot(x,y)05101520253035404550-8-6-4-20246810 Z=peaks;returns a 49-by-49 matrix.Z=peaks(n);returns an n-by-n matrix.Z=peaks(V);returns an n-by-n matrix,where n=length(V).Z=peaks(X,Y);evaluates peaks at the given X and Y(which must be the same size)and returns a matrix the same size.subplot 子图分割命令

5、调用格式:subplot(m,n,p)按从左至右,从上至下排列 行列绘图序号t=0:0.1: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)t=0:0.1:2*piy=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);subplot(3,1,1);plot(t,y)subplot(3,1,2);plot(t,y3)subplot(3,1,3);plot(t,y2)t=0:0.1:2*pi

6、y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);y3=sin(t+1)subplot(position,0.05,0.55,0.4,0.45);plot(t,y)subplot(position,0.55,0.55,0.4,0.45);plot(t,y3)subplot(position,0.35,0.05,0.4,0.45);plot(t,y2)注意:一旦区域叠加,则覆盖 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)%自动出现第一个窗

7、口figure(2)plot(t,y1)%在第二窗口绘图figure(3)plot(t,y2)%在第三窗口绘图plot(t,y,r-,t,y1,g:,t,y2,b*)将标题、坐标轴标记、网格线及文字注释加注到图形上,这些函数为:title 给图形加标题 xlable 给x轴加标注 ylable 给y轴加标注 text 在图形指定位置加标注 gtext 将标注加到图形任意位置 grid on(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

8、.6*pi;y=-0.3;0.8;s=sin(t);cos(t);text(x,y,s);title(正弦和余弦曲线);legend(正弦,余弦);xlabel(时间t),ylabel(正弦、余弦);gtext(here your mouse hitted);grid on;axis的用法还有:axis(xmin xmax ymin ymax)用行向量中 给出的值设定坐标轴的最大和最小值。如axis(-2 2 0 5)axis(equal)将两坐标轴设为相等 axis on(off)显示和关闭坐标轴的标 记、标志 axis auto 将坐标轴设置返回自动缺 省值 holdt=0:pi/100:

9、2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y)hold onplot(t,y1)plot(t,y2)semilogx semilogy loglog(1)直接保存:直接保存:方法一,菜单栏点击文件-另存为,输出图片;方法二,菜单栏点击文件-导出设置,选择参数,输出图片(2)saveas命令保存:命令保存:saveas(图形句柄,图名,图形格式)图形句柄:gcf,h等;图名:待保存的图形名称;图形格式取值:fig,jpeg,tiff,png,bmp,eps等(3)print命令保存:命令保存:print(图形句柄,-depsc2,-r60

10、0,abc.eps)print(图形句柄,-djpeg,-r600,abc.jpeg)x=-pi:2*pi/300:pi;y=sin(x);h=plot(x,y);saveas(h,Fig1,fig)saveas(h,Fig1,tiff)saveas(h,Fig1,bmp)例1:saveas命令 x=-pi:2*pi/300:pi;y=sin(x);plot(x,y);print(gcf,-dpng,Fig2.png)print(gcf,-dbitmap,Fig2.bmp)print(gcf,-depsc2,-r600,Fig2.eps)例2:print命令 print Fig3.jpeg-d

11、jpeg-r600例3:print命令 pcolor 常用于以二维平面图表现三维图形的效果,用颜色表示三维图形的高度。z=peaks(30)pcolor(z)Shading flatshading interph6=colorbar;pcolor 例子y=1:10;x=1:10;z=randn(10,10);pcolor(x,y,z);Shading flatshading interph6=colorbar;(三)二维等高(值)线图contour(Z,n)-绘制n条等高线c=contourc(Z,n)-计算n条等高线的坐标clable(c)-给等高线加标注例、在二维平面上绘制peaks函数的

12、10条等 高线contour(peaks,10);c=contourc(peaks,10);clabel(c)contour 例子y=1:10;x=1:10;z=randn(10,10);contour(x,y,z);c=contourc(x,y,z);clabel(c)(四)fill 绘制二维多边形并填充颜色t=0:0.1:10y1=sin(t);y2=cos(t);fill(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(正弦和余弦曲线);legend(正弦,余弦)xlabel(时间t

13、),ylabel(正弦、余弦)t=(1/16:1/8:1)*2*pi;%定义八角形的刻度x=sin(t);y=cos(t);h=fill(x,y,r);axis squareset(h,linewidth,5)set(gcf,color,w,position,400,350,250,150,menubar,none)set(gca,visible,off)bar 绘制直方图 polar 绘制极坐标图 hist 绘制统计直方图 stairs 绘制阶梯图 stem 绘制火柴杆图 rose 绘制统计扇形图 comet 绘制彗星曲线 errorbar 绘制误差棒图 compass 复数向量图(罗盘图)

14、feather 复数向量投影图(羽毛图)quiver 向量场图 area 区域图 pie 饼图 convhull 凸壳图 scatter 离散点图t=0:0.2:2*pi;y=cos(t);bar(y)t=0:.01:2*pi;polar(t,sin(2*t).*cos(2*t),-r)x=-2.9:0.1:2.9;y=randn(10000,1);hist(y,x)h2=1 1;1-1;h4=h2 h2;h2-h2;h8=h4 h4;h4-h4;t=1:8;subplot(8,1,1);stairs(t,h8(1,:);axis(off)subplot(8,1,2);stairs(t,h8(

15、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(off)subplot(8,1,7);stairs(t,h8(7,:);axis(off)subplot(8,1,8);stairs(t,h8(8,:);axis(off)或者或者:h2=1 1;1-1;h4=h2 h2;h2-h2;h8=h4 h4;

16、h4-h4;t=1:8;for i=1:8subplot(8,1,i);stairs(t,h8(i,:)axis(off)endx=0:pi/20:2*pi;y=sin(x);stairs(x,y)t=0:0.2:2*pi;y=cos(t);stem(y)theta=2*pi*rand(1,50);rose(theta)rose(theta,x)x可为行向量,默认为20t=-pi:pi/500:pi;y=tan(sin(t)-sin(tan(t);comet(t,y)与plot(t,y)的区别X=0:pi/30:2*pi;Y=sin(X);E=std(Y)*rand(1,length(X)/1

17、0;errorbar(X,Y,E)Z=eig(randn(20,20);compass(Z)theta=(-90:10:90)*pi/180;r=2*ones(size(theta);u,v=pol2cart(theta,r);feather(u,v);X,Y=meshgrid(-2:.2:2);Z=X.*exp(-X.2-Y.2);DX,DY=gradient(Z,.2,.2);contour(X,Y,Z)hold onquiver(X,Y,DX,DY)colormap hsvgrid offhold offY=1,5,3;3,2,7;1,5,3;2,6,1;area(Y)grid onco

18、lormap summerset(gca,Layer,top)title Stacked Area Plotx=1 3 0.5 2.5 2;explode=0 1 0 0 0;pie(x,explode)colormap jetxx=-1:.05:1;yy=abs(sqrt(xx);x,y=pol2cart(xx,yy);k=convhull(x,y);plot(x(k),y(k),r-,x,y,b+)load seamountscatter(x,y,5,z)scatter3(x,y,z,5,b)三维绘图的主要功能:绘制三维线图 绘制等高线图 绘制三维网线图 绘制三维曲面图、柱面图和球面图 绘

19、制三维多面体并填充颜色 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(xmin xmax ymin ymax zmin zmax)grid on(off)绘制三维网格 text(x,y,z,string)三维图形标注 子图和多窗口也可以用到三维图形中例:绘制三维线图t=0:pi/50:10*pi;plot3(t,sin(t),cos

20、(t),r:)010203040-1-0.500.51-1-0.500.5127%30%20%13%10%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);hold on;plot3(y1,y2,y3,yo)mesh 三维网线绘图函数 调用格式:mesh(z)z为nm的矩阵,x与y 坐标为元素的下标 mesh(x,y,z)x,y,z分别为三维空 间的坐标位置例,

21、矩阵的三维网线图z=rand(6);z=round(z);mesh(z);1 0 0 1 0 0 0 1 0 1 0 1 0 1 1 1 1 0 1 0 1 1 0 0 1 0 1 0 0 1 1 0 1 0 0 1mesh(z)0246024600.20.40.60.81h2=1 1;1-1;h4=h2 h2;h2-h2h8=h4 h4;h4-h4 1 1 1 1 1 1 1 1 1 -1 1 -1 1 -1 1 -1 1 1 -1 -1 1 1 -1 -1 1 -1 -1 1 1 -1 -1 1 1 1 1 1 -1 -1 -1 -1 1 -1 1 -1 -1 1 -1 1 1 1 -1

22、-1 -1 -1 1 1 1 -1 -1 1 -1 1 1 -1mesh(h8)0246802468-1-0.500.51 生成坐标 X,Y=meshgrid(x,y)表达式点运算 Z=X.2+Y.2X,Y是nm的矩阵,维数可任定X Y Z默认方位角:,俯角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.2 mesh(X,Y,Z)坐标矩阵坐标向量纵坐标矩阵绘图函数x=-5:5;y=x;X,Y=meshgrid(x,y)Z=X.2+Y.2;m

23、esh(X,Y,Z)surf 三维曲面绘图函数,与网格图 看起来一样与三维网线图的区别:网线图:线条有颜色,空挡是黑色的(无颜色)曲面图:线条是黑色的,空挡有颜色(把线条之间的空挡填充颜色,沿z轴按每一网格变化 调用格式:surf(x,y,z)绘制三维曲面图,x,y,z 为图形坐标向量例:X,Y,Z=peaks(30)peaks为matlab自动生成的三维测试图形surf(X,Y,Z)-202-202-505xyPeaks-4-2024-4-2024-10-50510 surfc(X,Y,Z)带等高线的曲面图 X,Y,Z=peaks(30);surfc(X,Y,Z)-4-2024-4-2024

24、-10-50510 surfl(X,Y,Z)被光照射带阴影 的曲面图X,Y,Z=peaks(30);surfl(X,Y,Z)cylinde(r,n)三维柱面绘图函数 r 为半径;n为柱面圆周等分数例:绘制三维陀螺锥面t1=0:0.1:0.9;t2=1:0.1:2;r=t1-t2+2;x,y,z=cylinder(r,30);surf(x,y,z);grid-1-0.500.51-1-0.500.5100.20.40.60.81for i=1:2,for j=1:2,ax(i-1)*2+j)=subplot(2,2,(i-1)*2+j);end,endt=0:pi/10:2*pi;for i=1

25、:length(ax),cylinder(ax(i),2+cos(rand+1)*t);end例:创建4个坐标系,然后在4个坐标系中分别绘制旋转体-1-0.500.51-1-0.500.51-1-0.500.51 为球面等分数,缺省为20例:绘制三维球面x,y,z=sphere(30);surf(x,y,z);图形颜色的修饰 matlab 有极好的颜色表现功能,其颜色数据又构成了一维新的数据集合,也可称为四维图形 colormap(MAP)色图设定函数,MAP为m3维色图矩阵 colormap(R,G,B)色图设定函数 matlab 的颜色数据集合为红、绿、兰三颜色矩阵R,G,B,维数m3 r

26、,g,b在0 1区间连续取值,理论上颜色种类可达无穷多种 matlab使用三维向量表示一种颜色,常用颜色数据见下表 饱和色 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 0.5 灰色0.5 0 0 暗红色1 0.62 0.4 铜色0.49 1 0.8 浅绿0.49 1 0.83 宝石兰 图形颜色可根据需要任意生成,也可用matlab配备的色图函数 hsv 饱和值色图 gray 线性灰度色图 hot 暖色色图 cool 冷色色图 bone 兰色调灰色图 copper 铜色色图

27、pink 粉红色图 prism 光谱色图 jet 饱和值色图II flag 红、白、蓝交替色图注:surf(peaks);colormap hot或者 colormap(hot)shading faceted 网格修饰,缺省方式-202-202-505xyPeaks shading flat 去掉黑色线条,根据小方块的值确定颜色-202-202-505xyPeaks shading interp 颜色整体改变,根据小方块四角的值差补过度点的值确定颜色Surfl:有亮度figure(1);surf(peaks(30);colormap(hot);colorbar(horiz);figure(2)

28、;surf(peaks(30);colormap(cool);colorbar(vertical)%horiz表示水平色棒,vetical表垂直色棒 透视与消隐 用于网线图 裁剪修饰 用于网线图、曲面图 视角修饰 观察不同角度的三维视图 其它修饰:a.水线修饰 b.等高线修饰 透视与消隐p=peaks(30);mesh(p);hidden on01020300102030-10-50510p=peaks(30);mesh(p);hidden off;01020300102030-10-5051002040600204060-10-50510 裁减修饰p=peaks;p(30:40,20:30)

29、=nan*p(30:40,20:30);surf(p)02040600204060-10-50510p=peaks;p(30:40,20:30)=nan*p(30:40,20:30);mesh(p)视角修饰(函数view(az,el)az-方位角;el-俯视角 省缺值为:az=-37.5;el=30例:观察不同视角的波峰图形z=peaks(40);subplot(2,2,1);mesh(z);subplot(2,2,2);mesh(z);view(-15,60);subplot(2,2,3);mesh(z);view(-90,0);subplot(2,2,4);mesh(z);view(-7,

30、-10);0204002040-10010az=-37.5,el=300204002040-10010az=-15,el=6002040-10-50510az=-90,el=00204002040-10010az=-7,el=-1001020300102030-10-50510 其它修饰:a.水线修饰(waterfall)waterfall(peaks(30)02040600204060-10-50510clf;shg,x=3*pi*(-1:0.05:1);y=x;X,Y=meshgrid(x,y);R=sqrt(X.2+Y.2)+eps;Z=sin(R)./R;h=surf(X,Y,Z);colormap(jet);shading interp,axis offfor i=1:20rotate(h,0 0 1,10);%图形绕z轴旋转10度/次mmm(i)=getframe;%捕获画面。endmovie(mmm,5,10)基本绘图函数 plot,contour,pcolor,plot3,mesh,surf 要求掌握以上绘图函数的用法、简单图形标注、简单颜色设定

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!