Matlab的高级绘

上传人:xuey****n398 文档编号:244862040 上传时间:2024-10-06 格式:PPT 页数:64 大小:559.50KB
返回 下载 相关 举报
Matlab的高级绘_第1页
第1页 / 共64页
Matlab的高级绘_第2页
第2页 / 共64页
Matlab的高级绘_第3页
第3页 / 共64页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第四讲 Matlab 绘图,Matlab语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。,Matlab语言的绘图功能,不仅能绘制几乎所有的标准图形,而且其表现形式也是丰富多样的。,Matlab语言不仅具有高层绘图能力,而且还具有底层绘图能力句柄绘图方法。,在面向对象的图形设计基础上,使得用户可以用来开发各专业的专用图形。,一、二维绘图,(一)plot 最基本,最重要的二维图形指令,plot的功能:,plot命令自动打开一个图形窗口Figure,用直线连接相邻两数据点来绘制图形,根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上,可自定坐标轴,可把x, y 轴用对数坐标表示,如果已经存在一个图形窗口,plot命令则清除当前图形,绘制新图形。,可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗口多曲线分图绘图;可多窗口绘图。,可任意设定曲线颜色和线型。,可给图形加坐标网线和图形加注功能。,plot的调用格式,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,),S的标准设定值如下:,颜色线型,字母 颜色类别 标点 线型,y 黄色 - 实线,m 粉红 : 点线,c 青 -. 点虚线,r 大红 - 虚线,g 绿色,b 蓝色,w 白色,k 黑色,顶点标记,类型符号,实点 .,o 圆圈标记, 乘号标记,加号标记,*星号标记,s 方块标记,d 钻石,标记,V 向下三角形标记, 向上三角形标记,p 五角星标记,1. 单窗口单曲线绘图,例1:x=0, 0.48,0.84,1,0.91,0.6,0.14, x1, 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),例3: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,-);,y3=cos(t);y4=cos(t+0.25);y5=cos(t+0.5);,plot(t,y3);hold on; plot(t,y4); plot(t,y5);,x=peaks;plot(x)%产生49,49高斯分布的矩阵,y=1:length(peaks);,x=peaks;,plot(x,y),3. 单窗口多曲线分图绘图,subplot 子图分割命令,调用格式:,subplot(m,n,p), 按从左至右,,从上至下排列,行,列,绘图序号,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);,subplot(3,1,1);plot(t,y);,subplot(3,1,2);plot(t,y1);,subplot(3,1,3);plot(t,y2);,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.可任意设置颜色与线型,例 :plot(t,y,r-,t,y1,g:,t,y2,b*),6.图形加注功能,将标题、坐标轴标记、网格线及文字注,释加注到图形上,这些函数为:,title 给图形加标题,xlable 给x,轴加标注,ylable 给y,轴加标注,text (xt,yt,s) 在图形指定位置加标注,gtext 将标注加到图形任意位置,grid on(off) 打开、关闭坐标网格线,legend 添加绘制曲线线型、色彩的图例,axis 控制坐标轴的刻度,例:t=0:0.1:10;,y1=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);,gtext(s); %将标注加到图形任意位置,title(正弦和余弦曲线);,legend(正弦,余弦),xlabel(时间t),ylabel(正弦、余弦),grid,axis square,2,4,6,8,10,axis的用法还有,:,axis(x,min,x,max,y,min,y,max,) ,用行向量中,给出的值设定坐标轴的最大和最小值。,如axis (-2 2 0 5),axis equal ,将两坐标轴设为相等,axis on(off) ,显示和关闭坐标轴的标,记、标志,axis auto ,将坐标轴设置返回自动缺,省值,7.fplot 绘制数值函数二维曲线,fplot,的调用格式:,fplot(fun,lims),绘制函数fun在x区间 lims=xmin xmax ymin ymax的函数图。,fplot(fun,lims,corline), 以指定线形绘图。,x,y=fplot(fun,lims),只返回绘图点的值,而不绘图。用plot(x,y)来绘图。,figure(1);,fplot(sin(x),tan(x),cos(x),2*pi*-1 1 -1 1),figure(2);,fplot(humps,0 1,rp),8. ezplot 符号函数的简易绘图函数,ezplot的调用格式:,ezplot(f),这里f为包含单个符号变量x的符号表达式,在x轴的默认范围,-2*pi 2*pi内绘制f(x)的函数图,ezplot(f,xmin,xmax), 给定区间,ezplot(f,xmin,xmax,figure(n), 指定绘图窗口绘图。,ezplot(sin(x);grid on;,ezplot(sin(x),cos(y),-4*pi 4*pi,figure(2);,grid on,(二)特殊二维绘图函数,fill 平面多边形填色,bar ,绘制直方图,polar 绘制极坐标图,hist 绘制统计,直方图,stairs 绘制阶梯图,stem 绘制火柴杆图,rose 绘制统计扇形图,comet 绘制彗星曲线,area 区域图,pie 饼图,convhull 凸壳图,scatter 离散点图,errorbar 绘制误差棒图,compass 复数向量图(罗盘图),feather 复数向量投影图(羽毛图),quiver 向量场图,例:绘制二维多边形并填充颜色,例:x=1 2 3 4 5;y=4 1 5 1 4;,fill(x,y,r),例,绘制阶梯曲线,x=0:pi/20:2*pi;y=sin(x);,stairs(x,y),例:阶梯绘图,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(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;h4 -h4;,t=1:8;,for i=1:8,subplot(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);,figure(1);stem(y),figure(2);bar(y),例:绘制彗星曲线图,t= -pi:pi/500:pi;,y=tan(sin(t)-sin(tan(t);,comet(t,y),x=magic(6),area(x),x=1 2 3 4 5 6 7;,y=0 0 0 1 0 0 0;,pie(x,y),pie(x,y,north,south,east,west,middle,fa,white),二、 三维绘图,三维绘图的主要功能:,绘制三维线图,绘制等高线图,绘制伪彩色图,绘制三维网线图,绘制三维曲面图、柱面图和球面图,绘制三维多面体并填充颜色,(一)三维线图,plot3 基本的三维图形指令,调用格式:,plot3(x,y,z) x,y,z是长度相同的向量,plot3(X,Y,Z) X,Y,Z是维数相同的矩阵,plot3(x,y,z,s) 带开关量,plot3(x,1,y,1,z,1,s,1, x,2,y,2,z,2,s,2, ),二维图形的所有基本特性对三维图形全都适用。定义三维坐标轴,大小,axis(x,min,x,max,y,min,y,max,z,min,z,max,),grid on(off) 绘制三维网格,text(x,y,z,string) 三维图形标注,子图和多窗口也可以用到三维图形中,例:绘制三维线图,t=0:pi/50:10*pi;,plot3,(t,sin(t),cos(t),r:),例:二维图形在三维空间的排列,x=linspace(0,3*pi); %x轴的数据,z1=sin(x); %在x-z的平面内画图,z2=sin(2*x);,z3=sin(3*x);,y1=zeros(size(x);%数据的预定义,y3=zeros(size(x);,y2=y3/2;,plot3(x,y1,z1,x,y2,z2,x,y3,z3);,grid on;,xlabel(x-axis);ylabel(y-axis);zlabel(z-axis);,title(sin(x),sin(2x),sin(3x);,(二) 三维饼图,pie3(4 3 6 8 9),(三)三维多边形,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分别为三维空,间的坐标位置,例:矩阵的三维网线图,z=rand(6);,z=round(z) %取最近的整数,mesh(z);,三维网线图作图要领,生成坐标 X,Y=meshgrid(x,y),表达式点运算 Z=,X.2+Y.2,X,Y是nm的矩阵,维数可任定,X n,Y m,Z,默认方位角:37。5,,俯角30,。,nm维,meshgrid 网线坐标值计算函数,z=f(x,y) 根据x,y坐标找出z的高度,例:绘制z=x,2,+y,2,的三维网线图形,x=-5:5; y=x;,X,Y=meshgrid(x,y),Z=,X.2+Y.2,mesh(X,Y,Z),坐标矩阵,坐标向量,纵坐标矩阵,绘图函数,colormap( R,G,B) 色图设定函数,Matlab 的颜色数据集合为红、绿、兰三颜色矩阵R,G,B,维数m3,r,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 05 灰色,0.5 0 0 暗红色,1 0.62 0.4 铜色,0.49 1 0.8 浅绿,0.49 1 0.83 宝石兰,(五)三维曲面图,surf 三维曲面绘图函数,与网格图,看起来一样,与三维网线图的区别:,网线图:,线条有颜色,空挡是白色的,(无颜色),曲面图:,线条是黑色的,空挡有颜色,(把,线条之间的空挡填充颜色,沿z轴按每一网,格变化,调用格式:,surf(x,y,z) 绘制三维曲面图,x,y,z,为图形坐标向量,例:,X,Y,Z=peaks(30),surf(X,Y,Z),peaks为Matlab,自动生成的三维测,试图形,x=-5:5; y=x;,X,Y=meshgrid(x,y);,Z=,X.2+Y.2;,surf(X,Y,Z) ;, surfc(X,Y,Z) 带等高线的曲面图,X,Y,Z=peaks(30);,surfc(X,Y,Z), 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 on,为球面等分数,缺省为20,例:绘制三维球面,x,y,z=,sphere,(30);surf(x,y,z);,小结:,基本绘图函数,plot, plot3, mesh, surf,要求掌握以上绘图函数的用法、简单图形标注、简单颜色设定,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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