MATLAB图形处理.docx_第1页
MATLAB图形处理.docx_第2页
MATLAB图形处理.docx_第3页
MATLAB图形处理.docx_第4页
MATLAB图形处理.docx_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

图形处理基本绘图命令1、图形窗口简介2、基本的绘图操作plot:在x轴和y轴都按线性比例绘制二维图形plot3:在x轴、y轴和z轴都按线性比例绘制三维图形loglog:在x轴和y轴按对数比例绘制二维图形semilogx:在x轴按对数比例,在y轴按线性比例绘制二维图形semilogy:在x轴按线性比例,在y轴按对数比例绘制二维图形plotyy:绘制双y轴图形fplot:用户不知道某一函数随自变量变化趋势fplot(function,limits,tol,LineSpec)fplot(200*sin(x)./x,-20 20)(1)、绘图步骤准备绘图数据选择一个窗口并在窗口中给图形定位调用基本的绘图函数选择线型和标记特性设置坐标轴的极限值、标记符号和网格线使用坐标轴标签、图例和文本对图形进行注释输出图形(2)、绘制而为曲线图plot(y):依据y的每一列的标志绘制出y 的每一列(排列序号为横坐标,对于矩阵而言,行号即是横坐标,对于向量而言下标即是横坐标),如果y属于复平面,那么plot(y)等价于plot(real(y),imag(y),即以real(y)为横坐标,imag(y)为纵坐标绘制二维图形。当输入变量多于一个时,虚部都将会被忽略plot(x,y):绘制向量y相对于向量x的图形。如果x或者y为矩阵,那么绘制的向量则对应于矩阵中的行或者列;如果x是一个标量而y为一个向量,那么length(y)形成不连续的点被绘制出来plot(x,y,s):可以用来绘制不同线型、标识和颜色的图形,其中s为一个字符串,意义如下表所示plot(x1,y1,s1,x2,y2,s2,x3,y3,s3):将多个图形放置在一个图形框里x=0:pi/200:2*piy=sin(x)plot(x,y)x=0:pi/100:2*pi;y1=sin(x);y2=sin(x-0.25);y3=sin(x-0.5);plot(x,y1,x,y2,x,y3)比较%x,y均为向量x=0:0.02:3*pi;u=sin(x);plot(x,u)%x为向量,y为矩阵x=0:pi/50:3*pi;v(1,:)=sin(x);v(2,:)=0.3*sin(x);v(3,:)=0.6*sin(x);figure;plot(x,v)%绘制v的行或列对x的图形%x,y均为矩阵x=4 5 6;1 3 2;w=7 9 8;12 11 10;figure;plot(x,w)%w列向量对x列向量的图形(3)、曲线的色彩、线型和数据点型x=0:pi/100:2*pi;y1=sin(x);y2=sin(x-0.25);y3=sin(x-0.5);plot(x,y1,-.b,x,y2,-r*,x,y3,-.hg)(4)、定义线和点的颜色和宽度LineWidth以点为单位的线的宽度MarkerEdgeColor数据点型或是其边界的颜色MarkerFaceColor数据点型的填充色MarkerSize点的宽度x=-pi:pi/10:pi;y=tan(sin(x)-sin(tan(x);plot(x,y,-rs,LineWidth,2,.MarkerEdgeColor,k,.MarkerFaceColor,g,.MarkerSize,10)(5)、图形的多次叠放hold on保持当前图形,并且将此后绘制的所有图形添加到当前的图形窗口中,如果新的曲线所对应的坐标极限值与原图不一致,系统将自动进行调整hold off返回plot命令所默认的形式,并且在绘图之前重新设置坐标系的属性hold在hold on和hold off状态之间进行切换hold all保留当前的颜色和线型,这样在绘制随后的图形时就使用当前的颜色和线型hold(ax,) 同时保留坐标轴信息%该程序用于绘制分段函数的图形%x为0到1时,y=xx=0:0.01:1;y=x;plot(x,y)%hold on命令保持当前图形,将此后绘制的所有图形添加到当前的图形窗口中%新的曲线所对应的坐标极限值与原图不一致,系统将自动进行调整hold on%x为1到2时,y=0.5*x.4+0.5x=1:0.01:2;y=0.5*x.4+0.5;plot(x,y)%x为2到5时,y=-x.2+9*x-5.5x=2:0.01:5;y=-x.2+9*x-5.5;plot(x,y)%该程序用于绘制多个函数图形%x从0到4*pix=0:pi/15:4*pi;y=sin(x);S1=-b*;plot(x,y,S1)hold ony=cos(x);S2=-.rd;plot(x,y,S2)y=cos(x).3+sin(x).3;S3=-kx;plot(x,y,S3)(6)、仅绘制二维图形的数据点不需要使用线型联系各个点,不指定线型,只指定点型和颜色x=0:pi/15:4*pi;y=exp(2*cos(x);plot(x,y,r+); (7)、设置默认的曲线形式set(0,DefaultAxesLineStyleOrder,-o,:s,-+)命令将定义3中默认的曲线形式set(0,DefaultAxesColorOrder,0.4 0.4 0.4)设置线型的颜色为灰白取消语句:set(0,DefaultAxesLineStyleOrder,remove)set(0,DefaultAxesColorOrder,remove)set(0,DefaultAxesLineStyleOrder,-o,:s,-+)set(0,DefaultAxesColorOrder,0.4 0.4 0.4)x=0:pi/10:2*pi;y1=sin(x);y2=sin(x-pi/2);y3=sin(x-pi);plot(x,y1,x,y2,x,y3)(8)、对数比例坐标轴和双y轴对数比例坐标轴x=linspace(1,100,100);y=exp(x);loglog(x,y)semilogy(x,y)由于y=exp(x),当y坐标使用对数坐标时,所绘图形为一条直线双y轴坐标轴(在进行数值比较时,会遇到必须使用双纵坐标的情况)plotyy(x1,y1,x2,y2):将x1和y1多对应的图形的纵坐标标注在图形的左边,并把x2和y2所对应的的图形的纵坐标标注在图形的右边plotyy(x1,y1,x2,y2,fun):fun选择绘图时所使用的形式,fun可以是plot,semilogx,semilogy,loglog,stem,前面不能省略plotyy(x1,y1,x2,y2,fun1,fun2):fun1(x1,y1)来给左边的坐标轴绘制图形,fun2(x2,y2)来给右边的坐标轴绘制图形,由于在使用plotyy函数的图形过程中,不能对所用曲线的属性进行设置,因此,用户必须使用句柄图形控制来完成ax,h1,h2=plotyy():返回两条纵坐标的控制句柄,其中ax(1)是左轴的句柄,ax(2)是右轴的句柄x1=linspace(-7,7,100);y1=sin(x1);x2=linspace(-7,7,100);y2=cos(x2);plotyy(x1,y1,x2,y2)如果用户想使用不同的坐标轴来绘制X1-Y1图形和X2-Y2图形,可以使用plotyy(x1,y1,x2,y2,fun1,fun2)来完成绘制x1=linspace(-2*pi,2*pi,100);y1=exp(x1);x2=linspace(-6,6,100);y2=0.01*(x2.3+3*x2.2+5*x2);plotyy(x1,y1,x2,y2,semilogy,plot)(9)、极坐标图形的绘制polar(theta,rho):角度theta,极半径rhopolar(theta,rho,s):s是绘制图形的颜色和线型的定义t=0:0.01:4*pi;s=abs(sin(2*t).*cos(2*t);polar(t,s,r)(10)、多子图将多个图形在同一窗口显示,不是简单的叠加H=subplot(m,n,p)或者subplot(mnp):将图形窗口分解为m*n块绘图子域,并且设置第p块绘图子域为当前绘图窗口subplot(m,n,p,replace):如果第p块绘图子域轴系已经存在,则将其轴删除,并且用replace代替subplot(m,n, P):P是一个向量时,将P所在位置合并后绘图subplot(position,left,bottom,width,height):在标准坐标系中,指定的位置生成一个轴系x=0:0.1:20;subplot(221)plot(x,bessel(1,x),x,bessel(2,x),x,bessel(3,x)subplot(222)Z=peaks;plot(Z)subplot(223)y=cos(x);S1=-b*;plot(x,y,S1)x=0:pi/15:4*pi;y=sin(x);plot(x,y,S1)subplot(224)x=3:0.01:5;y=-x.2+9*x-13;plot(x,y)3、图形注释图形注释工具栏显示:Figure窗口ViewPlot Edit Toolbar图形调色板中的注释工具:Figure窗口ViewFigure Palette从Insert菜单添加注释:Figure窗口Insert使用命令语句添加注释:annotation:创建线、箭头、矩形、文本框等xlabel,ylabel,zlabel:为相应坐标轴添加标签title:给图形添加标题colorbar:给图形添加颜色条legend:给图形添加图例(1)、图题的标注InsertProperty Editortitle函数:title(text)title(text,property1 ,propertyvalue1 ,property2,)x=linspace(-2*pi,2*pi,100);y=sin(x);plot(x,y)title(正弦曲线)(2)、坐标轴的标签InsertProperty Editorxlabel(text)xlabel (text,property1 ,propertyvalue1 ,property2,)ylabel(text)ylabel (text,property1 ,propertyvalue1 ,property2,)zlabel(text)zlabel (text,property1 ,propertyvalue1 ,property2,)x=linspace(1,100,100);y=log(x);plot(x,y)title(自然对数图);xlabel(x取值范围是1-100);ylabel(y=log(x);(3)、文本标注和交互式文本标注text函数:text(x,y,string):在坐标为(x,y)的位置上添加string,若x和y为向量,那么text函数将在所有这些位置点上进行标注text(x,y,z,string)x=linspace(-5,5,100);y=x.4-22*x.2-6*x+10;plot(x,y,r);title(多项式图形);xlabel(x的取值范围);ylabel(y的值);text(0,10,x.4-22*x.2-6*x+10)gtext函数;gtext(string):在图形窗口中显示一个“十”字交叉线,用户可以通过移动鼠标或使用键盘来选择文本标注的位置,当选定位置后,单击鼠标,系统将把指定的文本显示到所选择的位置上gtext(c):将单元型矩阵的各个子单元中的字符显示到指定的位置上gtext(,propertyname,propertyvalue,):给指定的文本属性赋值x=0:0.1:5*pi;y=cos(x);plot(x,y,r)gtext(y=cos(x),fontsize,14,fontweight,bold,fontname,楷体)(4)、在图形编辑模式下添加箭头和直线Insert:Show Property Editorline函数:line(x,y):在当前图形窗口中添加以向量x和向量y绘制成的直线x=linspace(0,5*pi,100);y=sin(x);plot(x,y)X=0 16;Y=0 0;line(X,Y)(5)、图例的添加Insert:双击图例可以修改legend函数:legend(string1,string2,string3,):在当前图形中输入标注语句,标注顺序对应绘制过程中按绘制先后顺序所生成的曲线legend(H,string1,string2,string3,):使用向量H中定义的句柄,标注包含对应于相应句柄指定的文本legend off:从当前坐标系中删除legendlegend hide:图例标注不可见legend show:图例标注课件legend(,Pos):将图例标注放置在指定的位置,Pos的取值(0:系统自动;1:右上角;2:左上角;3:左下角;4:右下角;-1:右外侧)x=0:0.1:20;plot(x,bessel(1,x),x,bessel(2,x),x,bessel(3,x)legend(第一条,第二条,第三条)legend(第一条,第二条,第三条,2)可以拖动,右键legendShow Property Editor(6)、坐标网格的添加grid off:关闭坐标网格grid on:打开坐标网格grid Minor:使用更细化的网格grid(AX,):使用AX坐标系代替当前坐标系x=0:0.01:2;y=exp(x);plot(x,y,b)grid on4、特殊图形的绘制(1)、条形图和面积图bar:绘制矩阵Y(m*n)各列的垂直条形图,各条以垂直方向显示barh:绘制矩阵Y(m*n)各列的垂直条形图,各条以水平方向显示bar3:绘制矩阵Y(m*n)各列的三维垂直条形图,各条以垂直方向显示bar3h:绘制矩阵Y(m*n)各列的三维垂直条形图,各条以水平方向显示area:绘制向量的堆栈面积图集合式条形图Y=5 2 1;3 1 4;1 5 9;5 5 5;5 3 2bar(Y)分离式三维条形图Y=5 2 1;3 1 4;1 5 9;5 5 5;5 3 2bar3(Y)堆叠式条形图Y=5 2 1;3 1 4;1 5 9;5 5 5;5 3 2bar(Y,stack)grid on面积图Y=5 2 1;3 1 4;1 5 9;5 5 5;5 3 2area(Y)bar(X,Y):在横坐标X上绘制出Y的条形图,X为严格单调增向量bar(2 3 5,1 2 3;3 4 5;8 6 4)(2)、饼形图pie(x)和pie3(x):绘制关于向量x的各个分量的饼形图,x的各个分量被除以sum(x),若sum(x)=1.0,那么向量x各个分量的值将直接成为“饼块份额”,将会绘制出不完整的饼形图H=pie(x,e)和H=pie3(x,e):绘制出饼块分离的饼形图,向量e必须和x有相同的维数,e和x 的分量一一对应,若其中有分量部位0,则x中对应的分量将被分离出饼形图H=pie(,labels)和H=pie(,labels):给每个饼块取名,labels必须和x具有相同的维数且只能为字符型单元数组x=0.1 0.2 0.3 0.1;label=north,south,east,west;a=0 0 1 1;pie(x,a,label)X=13 10 3 2 1;EXPLODE=1 0 0 0 0;label=China India Japan America Russian;pie3(X,EXPLODE,label)pie3(49 21 16 14,1 1 1 0,Tsinghua,Peking,Fudan,Zhejiang)colormap(cool)(3)、离散型数据图stem(Y):绘制Y的数据序列,图形从起始于X轴,在每个数据点处绘制圆圈stem(X,Y):按照指定的X绘制Ystem3(Z):绘制Z的数据序列,图形起始于X-Y平面stem3(X,Y,Z)stairs(Y):按照向量Y的元素绘制出阶梯状图形stairs(X,Y):按照指定X对应的向量Y,X必须是单调递增y=randn(40,1);stem(y);x=-10:0.25:10;y=x.2+2.*x;stem(x,y,r)th=(0:127)/128*2*pi;x=cos(th);y=sin(th);f=abs(fft(ones(10,1),128);stem3(x,y,f,d,fill)xlabel(Real)ylabel(Imaginary)title(Magnitude Frequency Response)alpha=0.01;beta=0.5;t=0:10;f=exp(-alpha*t).*sin(beta*t)stairs(t,f)hold onplot(t,f,-*)hold offlabel=Stairstep plot of e-(alpha*t)sinbeta*t;text(0.5,-0.2,label,FontSize,14)xlabel(t=0:10,FontSize,14)axis(0 10 -1.2 1.2)(4)、方向和速度矢量图形compass:显示极坐标图形中的极点发散出来的矢量图feather:显示从一条水平线上均匀间隔的点所散发出来的矢量图quiver:显示由(u,v)矢量特定的二维矢量图quiver3:显示由(u,v,w)矢量特定的三维矢量图wdir=45 90 90 45 360 335 360 270 335 270 335 335;knots=6 6 8 6 3 9 6 8 9 10 14 12;rdir=wdir*pi/180;x y=pol2cart(rdir,knots);compass(x,y)hold ondesc=Wind Direction and Strength at, Logan Airport for, Nov.3 at 1800 through, Nov.4 at 0600;text(-28,15,desc)x,y=meshgrid(-2:0.2:2,-1:0.15:1);z=x.*exp(-x.2-y.2);px py=gradient(z,0.2,0.15);contour(x,y,z)hold on quiver(x,y,px,py)hold offaxis image(5)、等高线的绘制clabel:使用等值矩阵生成标注,并将标注显示在当前图形contour:显示矩阵Z的二维等高线图contour3contourf:显示矩阵Z的二维等高线图,并在各等高线之间用实体颜色填充contourc:计算由其他等高线函数调用的等值矩阵meshc:创建一个与二维等高线图匹配的网线图surfc:创建一个与二维等高线图匹配的曲面图x y=meshgrid(1:100,1:100)z=peaks(100);contour(x,y,z)Z=peaks;C h=contour(Z,10);clabel(C,h);title(Contour Labeled Using,clabel(C,h)z=peaks(100);surfc(z);(6)、网格图的绘制mesh(x,y,z,c):绘制彩色三维网格图,视口由view函数定义,各轴范围由x、y和z或者axis函数定义,颜色范围由C或者当前的caxis值定义mesh(x,y,z):z,图形的颜色随高度按比例变化mesh(x1,y1,z,c)和mesh(x1,y1,z):用两个向量x1和y1代替矩阵x和y,满足条件length(x1)=n和length(y1)=m,而size(z)=m,n,向量x对应于矩阵z的列,向量y对应于矩阵z的行mesh(z)和mesh(z,c):默认x=1:n和y=1:m,高度z是一个单值函数mesh(,roprtynameprortyvalue):设置图形表面的属性值X Y Z=peaks(30);mesh(X,Y,Z);grid,xlabel(x-axis),ylabel(y-axis),zlabel(z-axis)title(MESH of PEAKS)X Y Z=sphere(12);subplot(1,2,1);mesh(X,Y,Z),title(Opaque)hidden onaxis offsubplot(122)mesh(X,Y,Z),title(Transparent)hidden off%网格线条之间透明axis offmeshc带有等高线的三维网格图形meshz增加了边界屏蔽的三维网格图subplot(121);z=peaks(50);meshc(z)subplot(122);meshz(z)绘制三维图形1、plot3命令(曲线)plot3(x1,y1,z1,参数1, x2,y2,z2,参数2)t=0:pi/50:10*pi;x=sin(t);y=cos(t);z=t;plot3(x,y,z)2、mesh命令(完整曲面)mesh(x,y,z):x的长度为m,y的长度为n,z必须为m*n的矩阵x=linspace(-2,2,30);y=linspace(-2,2,30);x1 y1=meshgrid(x,y);z=exp(-x1.2-y1.2);mesh(x1,y1,z)3、surf命令(着色三维曲面)surf(x,y,z)x=-8:0.5:8;y=-8:0.5:8;x y=meshgrid(x,y);z=sin(sqrt(x.2+y.2)./sqrt(x.2+y.2);subplot(221);mesh(x,y,z)subplot(222);meshc(x,y,z)subplot(223);meshz(x,y,z)subplot(224);surf(x,y,z)4、cylinder命令(圆柱图形)X,Y,Z=cylinder(r):半径为rx,y,z=cylinder(2+cos(linspace(0,2*pi,100).2);surf(x,y,z)5、sphere命令X,Y,Z=sphere(n):返回3个阶数为(n+1)*(n+1)的直角坐标矩阵x y z=spheremesh(x,y,z)hidden off6、图形处理的基本技术(1)、坐标轴调整axis(XMIN XMAX YMIN YMAX)axis(控制字符串)auto:默认自动square:设为正方形equal:x,y刻度相等normal:关闭equal功能xy:使用笛卡尔坐标系ij:使用Matrix坐标系,原点在左上方,x从左向右变大,y从上向下变大on:打开所有轴标注,标记和背景off:关闭所有轴标注,标记和背景坐标刻度标示:set (gca,xtick,标示向量) 和set (gca,ytick,标示向量)(2)、文字标示特定字符用反斜杠betaleftarrow文字进行设置,需在文字标识前用以下设置值:fontnameS:字体名称fontsizen:字号s:字体风格(3)、图例legend(4)、图形保持hold on(5)、网格控制grid ongrid off(6)、图形窗口figure创建窗口figure(propertyname,propertyvalue)figure(h):若句柄h存在,使该图形窗口成为当前窗口,h不存在,新建一个句柄为h的窗口对象交互式绘图操作1、Figure Palette板块ViewFigure PaletteNew Subplots:给图形中添加二维或三维图形Variables:浏览工作区间的变量并绘制图形Annotations:给图形增加注释(1)、增加多子图拖拽图形类型后面的网络图标(2)、绘制工作区间的标量双击变量,绘制该变量的曲线右击可以选择绘制的图形种类2、Plot Browser板块为每个图形提供了图例,它列出了所有图形以及绘制图形的对象(线型、颜色)(1)、编辑功能双击图例(2)、增加数据Add Data4、Property Editor板块ViewProperty EditorCommand Window:propertyeditor图形的高级控制1、视点控制和图形旋转view、viewmtx和rotate3dview(az,el)和view(az,el):设置观看三维图的3个角度,az为水平方向,从Y轴负方向开始,以逆时针方向旋转为正;el为垂直方位角,向Z轴方向的旋转为正,默认az=-37.5,el=30,相当于view(3);当az=0,el=90时,俯视图,相当于view(2)view(x,y,z):设置在笛卡尔坐标系下的视角,忽略x、y和z的幅值az el=view:返回当前的az和el值X Y=meshgrid(-4:0.2:4);Z=exp(-0.5*(X.2-Y.2);surf(X,Y,Z)view(2)az el=view%az=0,

温馨提示

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

评论

0/150

提交评论