MATLAB程序设计- 课件 第4章 数据可视化_第1页
MATLAB程序设计- 课件 第4章 数据可视化_第2页
MATLAB程序设计- 课件 第4章 数据可视化_第3页
MATLAB程序设计- 课件 第4章 数据可视化_第4页
MATLAB程序设计- 课件 第4章 数据可视化_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1MATLAB程序设计《MATLAB程序设计》2第四章数据可视化4.1二维图形绘制4.2三维图形绘制4.1二维图形绘制《MATLAB程序设计》3在MATLAB中,绘制直角坐标系下的二维曲线可以利用plot函数。这是最基本且应用最为广泛的绘图函数。plot函数的基本调用格式为:plot(x,y)4.1.1绘制单根二维曲线

例4-1在0≤x≤2π区间内,绘制曲线x=0:pi/100:2*pi;y=x.^2.*cos(4*pi*x);figureplot(x,y,'k-','LineWidth',1.5)xlim([min(x),max(x)]);xlabel('x');ylabel('y');4.1二维图形绘制《MATLAB程序设计》4例4-2绘制曲线,4.1.1绘制单根二维曲线

这是以参数方程的形式给出的二维曲线,只要给定参数向量,再分别求出x,y向量即可绘出曲线t=0:pi/100:2*pi;x=t.*cos(3*t);y=t.*cos(t).^2;figureplot(x,y,'k-','LineWidth',1.5)xlabel('x’);

ylabel('y');4.1二维图形绘制《MATLAB程序设计》54.1.1绘制单根二维曲线

plot函数最简单的调用格式是只包含一个输入参数x,调用格式为plot(x),在这种情况下,当x是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘制折线图。x=0:pi/100:2*pi;y=x.^2.*cos(4*pi*x);figureplot(y,'k-','LineWidth',1.5)xlim([0,length(y)])xlabel('数据点');ylabel('y');

以例题4-1为例,采用plot(x)格式绘制图形4.1二维图形绘制《MATLAB程序设计》64.1.2绘制多根二维曲线

调用形式:(1)plot函数的输入参数是矩阵形式;(2)含多个输入参数的plot函数;(3)具有两个纵坐标标度的图形4.1二维图形绘制《MATLAB程序设计》74.1.2绘制多根二维曲线

(1)plot函数的输入参数是矩阵形式①

当x是向量,y其中一维与x保持相同长度时,则绘制出多根不同颜色的曲线。曲线条数等于y矩阵的另一维大小,x被作为这些曲线共同的横坐标。x=linspace(-pi,pi,100);y=[exp(x*i);2*exp(x*i);3*exp(x*i)]';figureplot(y,'LineWidth',1.5);xlim([min(x),max(x)]);xlabel('x');ylabel('y’);legend('Line1','Line2','Line3')4.1二维图形绘制《MATLAB程序设计》84.1.2绘制多根二维曲线

(1)plot函数的输入参数是矩阵形式②

当x、y是同型矩阵时,则以x、y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。x1=linspace(0,pi,100);x2=linspace(2*pi,3*pi,100);x3=linspace(4*pi,5*pi,100);x=[x1;x2;x3]';y=[tan(x1);tan(x2);tan(x3)]';figureplot(x,y,'LineWidth',1.5);xlabel('x');ylabel('y');legend('Line1','Line2','Line3')4.1二维图形绘制《MATLAB程序设计》94.1.2绘制多根二维曲线

(2)含多个输入参数的plot函数

plot函数可以包含若干组向量对,每一向量对可以绘制一条曲线,含多个输入参数的plot函数调用格式为:plot(x1,y1,x2,y2,...,xn,yn)>>x1=linspace(0,2*pi,100);>>x2=linspace(0,3*pi,100);>>x3=linspace(0,4*pi,100);>>plot(x1,sin(x1),x2,1+sin(x2),x3,2+sin(x3))4.1二维图形绘制《MATLAB程序设计》104.1.2绘制多根二维曲线

(2)含多个输入参数的plot函数②当输入参数有矩阵形式时,配对的x、y按对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。>>xl=linspace(0,2*pi,100);>>x2=linspace(0,3*pi,100);>>x3=linspace(0,4*pi,100);>>y1=sin(x1);>>y2=1+sin(x2);>>y3=2+sin(x3);>>x=[xl;x2;x3]';>>y=[y1;y2;y3]';>>plot(x,y,x1,y1-1)4.1二维图形绘制《MATLAB程序设计》114.1.2绘制多根二维曲线

(3)具有两个纵坐标标度的图形具有两个纵坐标标度的图形有利于图形数据的对比分析。在MATLAB中,如果需要绘制这种图形,可以使用plotyy函数,其常用的调用格式为:

plotyy(x1,y1,x2,y2)4.1二维图形绘制《MATLAB程序设计》124.1.2绘制多根二维曲线

(3)具有两个纵坐标标度的图形例4-4采用两坐标形式绘制正弦曲线和余弦曲线。x=0:2*pi/100:2*pi;ysin=sin(x);ycos=cos(x);figure[hAx,hsin,hcos]=plotyy(x,ysin,x,ycos);xlim([min(x),max(x)]);hsin.LineStyle='--';hcos.LineStyle=':';hsin.Color='k';hcos.Color='k';ylabel(hAx(1),'ysin');ylabel(hAx(2),'ycos’);

xlabel('x')4.1二维图形绘制《MATLAB程序设计》134.1.3设置曲线样式

MATLAB提供了一些绘图选项,用于确定所绘曲线的线型、颜色和数据点标记符号。选项线型选项线型-实线(默认值)-.点划线:虚线--双划线线型选项4.1二维图形绘制《MATLAB程序设计》144.1.3设置曲线样式

MATLAB提供了一些绘图选项,用于确定所绘曲线的线型、颜色和数据点标记符号。颜色选项选项颜色选项颜色b(blue)蓝色m(magenta)品红色g(green)绿色y(yellow)黄色r(red)红色k(black)黑色c(cyan)青色w(white)白色4.1二维图形绘制《MATLAB程序设计》154.1.3设置曲线样式

MATLAB提供了一些绘图选项,用于确定所绘曲线的线型、颜色和数据点标记符号。标记符号选项标记符号选项标记符号.点p五角星符O圆圈h六角星符X叉号s方块符+加号d菱形符*星号

4.1二维图形绘制《MATLAB程序设计》164.1.3设置曲线样式

要设置曲线样式可以在plot函数中加绘图选项,其调用格式为:plot(x1,y1,选项1,x2,y2,选项2,…,xn,yn,选项n)例4-5

在同一坐标内,分别用不同线型和颜色绘制如下两条曲线,并标记两曲线交叉点。4.1二维图形绘制《MATLAB程序设计》174.1.3设置曲线样式

x=linspace(0,2*pi,1000);y1=0.2*cos(-0.5*x).*sin(4*pi*x);y2=2*cos(-0.5*x).*sin(pi*x);k=find(abs(y1-y2)<1e-3);x1=x(k);y3=0.2*exp(-0.5*x1).*cos(4*pi*x1);figureplot(x,y1,'k--',x,y2,'k:',x1,y3,'rp','LineWidth',1.5);xlim([min(x),max(x)]);ylim([-1.5,2])xlabel('x');ylabel('y’);legend('y1','y2','交叉点')4.1二维图形绘制《MATLAB程序设计》184.1.4图形标注与坐标控制

(1)图形标注在绘制图形的同时,可以对图形加上一些说明,如图形名称、坐标轴说明以及图形某一部分的含义等,这些操作称为添加图形标注,以使图形意义更加明确,可读性更强。①title(图形名称)②xlable(x轴说明)③ylable(y轴说明)④text(x,y,图形说明)⑤legend(图例1,图例2,...)4.1二维图形绘制《MATLAB程序设计》194.1.4图形标注与坐标控制

(2)坐标控制在绘制图形时,MATLAB可以自动根据要绘制曲线数据的范围选择合适的坐标刻度,使得曲线能够尽可能清晰地显示出来。①axisequal,纵、横坐标轴采用等长刻度。②axissquare,产生正方形坐标系(默认为矩形)。③axisauto,使用默认设置。④axisoff,取消坐标轴。⑤axison,显示坐标轴。axis([xmin,xmax,ymin,ymax,zmin,zmax])4.1二维图形绘制《MATLAB程序设计》204.1.5图形窗口的分割

在实际应用中,经常需要在一个图形窗口内绘制若干个独立的图形,这就需要对图形窗口进行分割。分割后的图形窗口由若干个绘图区组成,每一个绘图区可以建立独立的坐标系并绘制图形。同一图形窗口中的不同图形称为子图。MATLAB提供了subplot函数,用来将当前图形窗口分割成若干个绘图区。每个区域代表一个独立的子图,也是一个独立的坐标系,可以通过subplot函数激活某一区,该区为活动区,所发出的绘图命令都作用于活动区域。subplot函数的调用格式为:subplot(m,n,p)4.1二维图形绘制《MATLAB程序设计》214.1.6其他二维图形

(1)对函数自适应采样的绘图函数(2)对数坐标图(3)极坐标图例4-6

分别以cos(3t)和sin(2t)为横纵坐标,采用fplot函数绘制图形。xt=@(t)cos(3*t);yt=@(t)sin(2*t);fplot(xt,yt,'k-','LineWidth',1.5)xlabel('cos(3t)’);

ylabel('sin(2t)')4.1二维图形绘制《MATLAB程序设计》224.1.6其他二维图形

例4-7绘制的极坐标图。t=0:pi/100:2*pi;r=sin(2*t).*cos(2*t);figurepolar(t,r,'k-');4.2三维图形绘制《MATLAB程序设计》234.2.1三维曲线

最基本的三维图形函数为plot3,它是将二维绘图函数plot的有关功能扩展到三维空间,用来绘制三维曲线。plot3函数与plot函数用法十分相似,其调用格式为:

plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,…,xn,yn,zn,选项n)4.2三维图形绘制《MATLAB程序设计》244.2.1三维曲线

例4-8绘制下述三维曲线,其中t取值范围为[0,40π]。t=0:pi/500:40*pi;x=(3+cos(sqrt(32)*t)).*cos(t);y=sin(sqrt(32)*t);z=(3+cos(sqrt(32)*t)).*sin(t);plot3(x,y,z,'k-','LineWidth',1)gridonaxisequalxlabel('x(t)')ylabel('y(t)’)

zlabel('z(t)')4.2三维图形绘制《MATLAB程序设计》254.2.2三维曲面

例4-9

绘制三维曲面图z=y·sin(x)-x·cos(y)。[X,Y]=meshgrid(-5:.5:5);Z=Y.*sin(X)-X.*cos(Y);s=mesh(X,Y,Z,'LineWidth',1.5)colormapgray;4.2三维图形绘制《MATLAB程序设计》264.2.2三维曲面

例4-10在xy平面内选择区域[-8,8]×[-8,8],绘制下述函数4种三维曲面图。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(2,2,1);mesh(X,Y,Z);colormapgray;title('mesh(x,y,z)')subplot(2,2,2);meshc(X,Y,Z);colormapgray;title('meshc(x,y,z)')subplot(2,2,3);meshz(X,Y,Z);colormapgray;title('meshz(x,y,z)')subplot(2,2,4);surf(X,Y,Z);colormapgray;title('surf(x,y,z)')4.2三维图形绘

温馨提示

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

评论

0/150

提交评论