《matlab可视化绘图讲义.ppt》由会员分享,可在线阅读,更多相关《matlab可视化绘图讲义.ppt(89页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1本章目标l了解MATLAB的绘图功能l掌握二维图形和三维图形的绘制方法l能够进行常用的数据可视化处理2主要内容l二二维图形形l图图形修形修饰饰与控制与控制l特殊二特殊二维图形形l符号表达式符号表达式绘图l三三维图形形l声音与声音与动画画(了解了解)3概述l图形制作的一般形制作的一般过程:程:1)准备绘图数据;2)选定绘图窗口与绘图区域;3)调入绘图函数命令;4)设置图形格式;5)输出所绘制的图形。4准备绘图数据l方法主要有:方法主要有:(1)编制后制后缀为.txt的文本文件,使用的文本文件,使用load命令命令调入数据。入数据。(2)系通)系通过用用户自自编函数得到函数得到绘图数据。数据。(
2、3)通)通过MATLAB统函数得到函数得到绘图数据。数据。(4)根据鼠)根据鼠标在屏幕上的位置,使用命令在屏幕上的位置,使用命令ginput获得相得相应数据。数据。(5)在命令窗口或自)在命令窗口或自编函数相函数相应位置,直接位置,直接输入入或使用适当命令或使用适当命令输入。入。5选定绘图窗口与绘图区域l方法主要有:方法主要有:(1)使用figure创建新的绘图窗口。(2)使用plot、subplot等绘图命令。6调入绘图函数l主要函数有:主要函数有:二维:plot,bar,pie,area等 三维:plot3,mesh,surf,bar3,pie3等7设置图形格式设置图形格式l主要有三个方面
3、的设置:(1)线形(Line)、标记(Marker)和颜色(Color)的设置。(2)坐标轴范围、坐标轴标识、网格线的设置。(3)坐标轴标签、图例、文本等方面的设置。8举例l例例题例如:在例如:在0,2内作出正弦函数的内作出正弦函数的图形。形。x=0:0.5:2*pi;y=sin(x);plot(x,y,r:*);title(sin(x);xlabel(x);ylabel(y);grid on;9图形窗口图形窗口是个独立的窗口,系统自动将图形绘制在图形窗口上。10图形窗口的创建l函数命令:figure 调用格式:h=figure h=figure(n)功能:该命令创建单个图形窗口。注意点:*若
4、没有打开图形窗口时执行绘图命令,将自动创建一个图形窗口;*若执行绘图命令前已经打开几个图形窗口,则绘图命令把图形输出到当前窗口中、并把这个窗口中原来的图形覆盖;*n为图形窗口的编号(或者句柄句柄值)。11图形窗口的创建与控制l举例:例:h1=figure(1)x=0:0.01:2;y=sin(x);plot(x,y)h2=figureh3=figure(3)x=0:0.01:2;y=cos(x);plot(x,y)figure(h1)figure(h2)12图形窗口的控制l图形窗口的控制形窗口的控制get(n):获得第n个图形窗口的有关属性。set(n):设置第n个图形窗口的有关属性。gcf:
5、获得当前当前窗口的句柄。gca:获得当前窗口中当前axis的句柄。13图形窗口的控制l举例例x=0:0.1:10;y=sin(x);h=figure(1);h2=plot(x,y);get(h);set(h,visible,off);set(gcf,visible,on);set(h2,LineStyle,-);set(h2,Marker,p)14二维图形lplot函数函数绘制二制二维曲曲线,常用格式有:,常用格式有:lplot(x):缺省自变量的绘图格式,x可为向量或矩阵。lplot(x,y):基本格式,x和y可为向量或矩阵。lplot(x1,y1,x2,y2,):多条曲线绘图格式,在同一坐
6、标系中绘制多个图形。lplot(x,y,s):开关格式,开关量字符串s设定了图形曲线的颜色、线型及标示符号。lplot(x1,y1,s1,x2,y2,s2,)开关格式,多条曲线绘图15二维图形lplot(x)当x为一向量时,以x元素的值为纵坐标,x的序号为横坐标值绘制曲线。当x为一mn的实数矩阵时,以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线。最终绘制出n条曲线。16二维图形l例题x=1 4 3;%向量plot(x)%连接(1,1)(2,4)(3,3)三个点形成的曲线x=1 2;3 4;7 8;%矩阵plot(x)%连接(1,1)-(2,3)-(3,7),(1,2)-(2,4)-(3
7、,8)形成两条曲线17二维图形lplot(x,y)若x,y为同维向量,则以x元素为横坐标值,y元素为纵坐标值绘制曲线。若x是向量,y是有一维与x元素数量相等的矩阵,则以x为共同横坐标,把另一维作为纵坐标值来绘制,曲线数为y的另一维的元素数。若x,y是同维矩阵,则以x,y对应列元素为横、纵坐标分别绘制曲线。曲线数为矩阵的列数。18二维图形l例题x=2 3 4;y=7 8 9;plot(x,y)%同同维向量向量(2,7)-(3,8)-(4,9)y=7 8 9;1 2 3;plot(x,y)%x的元素数与的元素数与y的列数相同的列数相同%(2,7)-(3,8)-(4,9)(2,1)-(3,2)-(4
8、,3)x=2 3;plot(x,y)%x的元素数与的元素数与y的行数相同的行数相同%(2,7)-(3,1)(2,8)-(3,2)(2,9)-(3,3)x=1 2 3 4;5 6 7 8;y=7 8 9 0;1 2 3 4;plot(x,y)%x与与y同同维矩矩阵%(1,7)-(5,1)(2,8)-(6,2)(3,9)-(7,3)(4,0)-(8,4)19二维图形lplot(x1,y1,x2,y2,)在同一坐标系上绘制曲线(x1,y1),曲线(x2,y2),等多条曲线。20二维图形l例例题x1=1 2 3 4;y1=9 1 2 3;x2=1 2 5 5;y2=1 2 3 4;plot(x1,y1
9、,x2,y2)21二维图形l例例题在同一坐标系上画出正弦和余弦曲线。x=0:pi/10:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,x,y2);22二维图形lplot(x,y,s)类似于似于plot(x,y),不不过可以通可以通过开关量字符串开关量字符串s来来设定定图形曲形曲线的的颜色、色、线型及型及标示符号等。示符号等。lplot(x1,y1,s1,x2,y2,s2,)同同时绘制多条曲制多条曲线,并且可通,并且可通过s1,s2,来来设定定图形曲形曲线的的颜色、色、线型及型及标示符号等。示符号等。开关量字符串的开关量字符串的设置置请参考下表参考下表23图形颜色、标记和
10、线形参数表色彩色彩字符字符所定所定颜色颜色线型线型字符字符线型线型格式格式标记标记符号符号数据点数据点形式形式标记标记符号符号数据点数据点形式形式y黄黄-实线实线(默默认认).点点右三角形右三角形24二维图形l例例题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图形修饰与控制图形修饰与控制ltitle 给图形加形加标题lxlable 给x轴加加标注注lylable
11、给y轴加加标注注ltext 在在图形指定的任意位置加形指定的任意位置加标注注lgtext 利用鼠利用鼠标将将标注加到注加到图形任意位置形任意位置lgrid on 打开坐打开坐标网格网格线lgrid off关关闭坐坐标网格网格线llegend 添加添加图例例laxis 控制坐控制坐标轴刻度刻度26例:绘制正弦和余弦曲线,并加入网格和标注cleart=0:0.1:10;y1=sin(t);y2=cos(t);plot(t,y1,r,t,y2,b-);text(1.7*pi,-0.3,sin(t);%指定位置加指定位置加标标注注gtext(cost(t);%鼠鼠标标控制加控制加标标注注title(正
12、弦和余弦曲正弦和余弦曲线线);%标题标题legend(正弦正弦,余弦余弦)%添加添加图图例注解例注解xlabel(时间时间)%x坐坐标标名名ylabel(正弦正弦&余弦余弦)%y坐坐标标名名grid on%添加网格添加网格axis square%将将图图形形设设置置为为正方形正方形27axis设置坐标轴命令形式命令形式常用功能常用功能axis(xmin xmax ymin ymax)axis(xmin xmax ymin ymax)按照用户给出的按照用户给出的X X轴和轴和Y Y轴的最大、最小选择坐标系轴的最大、最小选择坐标系axis auto axis auto axis(auto)axis
13、(auto)自动设置坐标系自动设置坐标系axis xyaxis xyaxis(xy)axis(xy)使用笛卡尔坐标系使用笛卡尔坐标系axis ijaxis ijaxis(ij)axis(ij)使用使用matrixmatrix坐标系坐标系(y(y从上到下变大从上到下变大)axis squareaxis squareaxis(square)axis(square)将当前图形设置为正方形图形将当前图形设置为正方形图形axis equalaxis equalaxis(equal)axis(equal)将将x,yx,y坐标轴的单位刻度设置为相等坐标轴的单位刻度设置为相等axis normalaxis n
14、ormalaxis(normal)axis(normal)关闭关闭axis equalaxis equal和和axis squareaxis square命令的作用命令的作用axis offaxis offaxis(off)axis(off)关闭网格线、关闭网格线、xyxy坐标的用坐标的用labellabel命令所加的注释命令所加的注释axis onaxis onaxis(on)axis(on)打开网格线、打开网格线、xyxy坐标用的坐标用的labellabel命令所加的注释命令所加的注释28legend的位置cleart=0:0.1:10;y1=sin(t);y2=cos(t);plot(t
15、,y1,r,t,y2,b-);legend(sin(t),cos(t);%右上右上legend(sin(t),cos(t),0);%最佳最佳legend(sin(t),cos(t),1);%右上右上legend(sin(t),cos(t),2);%左上左上legend(sin(t),cos(t),3);%左下左下legend(sin(t),cos(t),4);%右下右下legend(sin(t),cos(t),-1);%外外29图形的比较显示图形的比较显示l用同一x,不同y进行调用plot来绘制多条曲线;l用hold on(/off)命令;l采用多重子图窗口命令subplot,即一个图形窗口中
16、含有几个子图区域。30图形的比较显示图形的比较显示lsubplot(m,n,p)将当前将当前绘图窗口分割成窗口分割成m行、行、n列,并且列,并且现在准在准备在其中的第在其中的第p个区域个区域绘图。l说明明 编号号规则:先上后下、先左后右:先上后下、先左后右;允允许每个每个绘图区域以不同的坐区域以不同的坐标系系单独独绘图;在使用在使用subplot后由想使用缺省的一幅后由想使用缺省的一幅图一个一个图形窗口的方式,形窗口的方式,则必必须执行行subplot(1,1,1)或者或者执行清除窗口分割的命令行清除窗口分割的命令clf.31采用采用hold函数对图形进行比较显示函数对图形进行比较显示 cle
17、art=0:pi/10:2*pi;y1=sin(t);y2=cos(t);y3=sin(t)-cos(t);plot(t,y1);hold on;%后后续图续图形叠加形叠加显显示示plot(t,y2);plot(t,y3);32采用图形窗口分割方法进行比较显示采用图形窗口分割方法进行比较显示 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);%将将图图形窗口分割成
18、两行两列形窗口分割成两行两列,要画的要画的图图形形为为第第1行第行第2列列subplot(2,2,2);plot(t,y2);%将将图图形窗口分割成两行两列形窗口分割成两行两列,要画的要画的图图形形为为第第2行第行第1列列subplot(2,2,3);plot(t,y3);%将将图图形窗口分割成两行两列,要画的形窗口分割成两行两列,要画的图图形形为为第第2行第行第2列列subplot(2,2,4);plot(t,y4);33特殊二维图形 圆饼图l圆饼图(pie)常用来表示各元素所占的百分比。常用来表示各元素所占的百分比。l格式格式 pie(y)pie(y,explode)pie(y,label
19、)l说明明 y为向量向量值时,则绘制出每一元素占全部向量制出每一元素占全部向量总和和值的百分比的的百分比的圆饼图;y为矩矩阵时,则绘制出每一元素占全部矩制出每一元素占全部矩阵元素元素总和和值的百分比的的百分比的圆饼图;参数参数explode说明将某一数据明将某一数据对应的扇形的扇形图形从整个形从整个圆饼图中分离出中分离出来,它的来,它的维数与数与y相同,当其中的元素大于相同,当其中的元素大于0,则需要分离。需要分离。参数参数label用来用来标注每一个扇形注每一个扇形图形。形。34圆饼图l例例题y=15,35,10,20,20;subplot(2,2,1);pie(y);subplot(2,2
20、,2);pie(y,1,0,0,1,0);subplot(2,2,3);pie(y,A,B,C,D,E);35圆饼图l例例题某班某班级考考试,90分以上分以上32人,人,8089分分5人,人,7079分分27人,人,6069分分21人,人,60分以下分以下16人,画出人,画出饼图,并且突出,并且突出显示示90分以上和不及格的。分以上和不及格的。x=32 58 27 21 16;explode=1 0 0 0 1;pie(x,explode,90,8089,7079,6069,z=peaks(40);mesh(z);%网格网格线线 figure%产产生新的生新的图图形窗口形窗口surf(z);%
21、着色表面着色表面图图70例用meshgrid等绘制三维曲面图l例例题题 绘绘制方程制方程71例用meshgrid等绘制三维曲面图clfx=-7.5:0.5:7.5;y=x;X,Y=meshgrid(x,y);R=sqrt(X.2+Y.2)+eps;%防止R为0Z=sin(R)./R;surf(X,Y,Z);mesh(X,Y,Z);72例用meshgrid等绘制三维曲面图l例例题题 绘绘制方程制方程形成的立体形成的立体图图73例用meshgrid等绘制三维曲面图clf x=-2:0.2:2;y=-2:0.2:2;xx,yy=meshgrid(x,y);zz=xx.*exp(-xx.2-yy.2)
22、;surf(xx,yy,zz)mesh(xx,yy,zz)74例用meshgrid等绘制三维曲面图l例例题题 在x属于-5,5,y属于-4,4上作出 对应的三维网格表面和三维曲面。75例用meshgrid等绘制三维曲面图clfx=-5:0.1:5;y=-4:0.1:4;X,Y=meshgrid(x,y);Z=0.5*X.3+Y.2;subplot(2,2,1);mesh(X,Y,Z);subplot(2,2,2);surf(X,Y,Z);subplot(2,2,3);meshc(X,Y,Z);subplot(2,2,4);surfc(X,Y,Z);figure(2)meshz(X,Y,Z)76
23、观察点设置l函数命令:view 调用格式:view(azimuth,elevation)方位角azimuth是观察点和坐标原点连线在x-y平面内的投影和y轴负方向的夹角。仰角elevation是观察点与座标原点的连线和x-y平面的夹角。默认:2D(0,90)3D(-37.5,30)77观察点clfz=peaks(40);subplot(2,2,1);mesh(z);subplot(2,2,2);mesh(z);view(-37.5,30);subplot(2,2,3);mesh(z);view(180,0);subplot(2,2,4);mesh(z);view(0,90);78色图处理l函数
24、命令:colormap,brighten 调用格式:colormap(map)brighten(s)colormap将当前图形色图设置为系统预定义的map格式;brighten改变当前图形窗口色图的亮度。79色图处理l例题:试将前例题色图设置为红色-蓝色-深红色色图,同时将图形适当增亮。clfx=-5:0.1:5;y=-4:0.1:4;X,Y=meshgrid(x,y);Z=0.5*X.3+Y.2;mesh(X,Y,Z);colormap(hsv);brighten(0.60);806.6 声音与动画l声音声音 函数命令:sound 调用格式:sound(y)sound(y,f)将向量y传送至
25、扬声器,f为采样频率。81声音与动画l例题:以20000Hz制作并播放余弦曲线形式的声音。x=cos(linspace(0,10000,20000);sound(x);82声音与动画l其他函数命令:wavplay wavread wavrecord wavwrite chirp beep83声音与动画l动画画 函数命令:getframe movie 调用格式:M=getframe movie(M,k)84声音与动画l例例题制作正弦曲线在0,2*Pi中从起点到终点的延伸情况曲线,并播放三次。85声音与动画s=0.2;x1=0;nframes=50;for k=1:nframes x1=x1+s;
26、x=0:0.01:x1;y=sin(x);plot(x,y);axis(0 2*pi-1 1);grid off;M(k)=getframe;endmovie(M,3);86应用举例l画出一花瓣状画出一花瓣状图图形形theta=-pi:0.01:pi;rho(1,:)=2*sin(5*theta).2;rho(2,:)=cos(10*theta).3;rho(3,:)=sin(theta).2;rho(4,:)=5*cos(3.5*theta).3;for i=1:4%极坐标图形输出函数 polar(theta,rho(i,:)pauseend87应用举例88clear;t=1:9;d1=12
27、.51 13.54 15.60 15.92 20.64 24.53 30.24 30.00 36.34;d2=2.87 20.54 32.21 40.50 48.31 64.51 72.32 85.98 89.77;d3=10.11 8.14 14.17 20.14 40.50 39.45 60.11 62.13 20.90;plot(t,d1,r.-,t,d2,gx:,t,d3,m*-.);title(稳稳定性定性变变化化规规律律);xlabel(时间时间);ylabel(稳稳定性定性);axis(0 10 0 100);text(6.5,25.5,leftarrow样样品品a);text(3,43.8,样样品品brightarrow);text(4.8,30.5,leftarrow样样品品c);89l学好学好计算机的唯一途径是算机的唯一途径是 l你的你的编程能力与你在程能力与你在计算机上投入的算机上投入的时间成成 结 束 语