资源预览内容
第1页 / 共67页
第2页 / 共67页
第3页 / 共67页
第4页 / 共67页
第5页 / 共67页
第6页 / 共67页
第7页 / 共67页
第8页 / 共67页
第9页 / 共67页
第10页 / 共67页
亲,该文档总共67页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第二单元 数据可视化主要内容 二维绘图 三维绘图 数据图视化能使人们用视觉器官直接感受到数据 的许多内在本质 。因此,数据可视化是人们研究科 学、认识世界所不可缺少的手段。MATLAB不仅数 值计算方面是一个优秀的科技应用软件, 在数据 可视化方面也具有上佳表现。 MATLAB具有二维、三维乃至四维的图形表现能 力。可以从线型、边界面、色彩、渲染、光线、视 角等方面把数据的特征表现出来。MATLAB作图是通过描点、连线来实现的,故在 画一个曲线图形之前,必须先取得该图形上的一 系列的点的坐标(即横坐标和纵坐标),然后将 该点集的坐标传给MATLAB函数画图. 命令为: plot(X,Y,S)plot(X,Y) 画实线 plot(X,Y1,S1,X,Y2,S2,X,Yn,Sn) 将多条线画在一起X,Y是向量,分别表示点集的横坐标和纵坐标线型y 黄色 . 点 - 连线 m 洋红 o 圈 : 短虚线 c 蓝绿色 x x-符号 -. 长短线 r 红色 + 加号 - 长虚线1.曲线图二维数据曲线图 1 绘制单根二维曲线 plot函数的基本调用格式为: plot(x,y) 其中x和y为长度相同的向量,分别用于存储x坐 标和y坐标数据。例2-1 在0x2区间内,绘制曲线y=2e-0.5xcos(4x) 程序如下: x=0:pi/100:2*pi; y=2*exp(-0.5*x).*cos(4*pi*x); plot(x,y)例2-2 绘制曲线。 程序如下: t=0:0.1:2*pi; x=t.*sin(3*t); y=t.*sin(t).*sin(t); plot(x,y);plot函数最简单的调用格式是只包含一个输入参数:plot(x)在这种情况下,当x是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续 曲线,这实际上是绘制折线图。2.1.2 绘制多根二维曲线1plot函数的输入参数是矩阵形式(1) 当x是向量,y是有一维与x同维的矩阵时,则绘制出 多根不同颜色的曲线。曲线条数等于y矩阵的另一维数 ,x被作为这些曲线共同的横坐标。(2) 当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。(3) 对只包含一个输入参数的plot函数,当输入参数是实矩阵时,则按列绘制每列元素值相对其下标的曲线,曲 线条数等于输入参数矩阵的列数。 (4)当输入参数是复数矩阵时,则按列分别以元素实部和虚部为横、纵坐标绘制多条曲线。2含多个输入参数的plot函数调用格式为: plot(x1,y1,x2,y2,xn,yn)(1) 当输入参数都为向量时,x1和y1,x2和y2,xn和yn分别组成一组向量对,每一组向量对的长度可以不同。每一向量对可以绘制出一条曲线,这样可以在同一坐标内绘制出多条曲线。(2) 当输入参数有矩阵形式时,配对的x,y按对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。例2-3 分析下列程序绘制的曲线。 x1=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=x1;x2;x3; y=y1;y2;y3; plot(x,y,x1,y1-1)例2-4 在同一坐标内绘制曲线y1=0.2e-0.5xcos(4x) 和y2=2e-0.5xcos(x)。程序如下: x=0:pi/100:2*pi; y1=0.2*exp(-0.5*x).*cos(4*pi*x); y2=2*exp(-0.5*x).*cos(pi*x); plot(x,y1,x,y2);4图形保持hold on/off命令控制是保持原有图形还是刷 新原有图形,不带参数的hold命令在两种状态之间进行切换。例2-5 采用图形保持,在同一坐标内绘制曲线y1=0.2e-0.5xcos(4x) 和y2=2e-0.5xcos(x)。 程序如下: x=0:pi/100:2*pi; y1=0.2*exp(-0.5*x).*cos(4*pi*x); plot(x,y1) hold on y2=2*exp(-0.5*x).*cos(pi*x); plot(x,y2); hold off2.1.3 设置曲线样式MATLAB提供了一些绘图选项,用于确定所绘曲线的线型、颜色和数据点标记符号,它们可以组 合使用。例如,“b-.”表示蓝色点划线,“y:d”表示黄色虚线并用菱形符标记数据点。当选项省略时, MATLAB规定,线型一律用实线,按默认颜色顺序 绘制。要设置曲线样式可以在plot函数中加绘图选项,其调用格式为:plot(x1,y1,选项1,x2,y2,选项2,xn,yn,选项n)颜色、数据点标记符号、线型字母 颜色 标点 线型y 黄色 点线m 粉红 圈线c 亮蓝 线r 大红 字线 g 绿色 实线b 蓝色 星形线w 白色 : 虚线k 黑色 (-) 点划线2.1.4 图形标注与坐标控制1图形标注有关图形标注函数的调用格式为:title(图形名称)xlabel(x轴说明)ylabel(y轴说明)text(x,y,图形说明)legend(图例1,图例2,)函数中的说明文字,除使用 标准的ASCII字符外,还可 使用LaTeX格式的控制字符,这样就可以在图形上添加 希腊字母、数学符号及公式 等内容。例,text(0.3,0.5, sin(omegat+beta)将 得到标注效果sin(t+)。例2-7 在0x2区间内,绘制曲线y1=2e-0.5x和 y2=cos(4x),并给图形添加图形标注。 程序如下: x=0:pi/100:2*pi; y1=2*exp(-0.5*x); y2=cos(4*pi*x); plot(x,y1,x,y2) title(x from 0 to 2pi); %加图形标题 xlabel(Variable X); %加X轴说明 ylabel(Variable Y); %加Y轴说明 text(0.8,1.5,曲线y1=2e-0.5x); %在指定位置添 加图形说明 text(2.5,1.1,曲线y2=cos(4pix); legend(y1, y2) %加图例例2-8 在同一坐标中,可以绘制2个 同心圆,并加坐标控制。程序如下:theta=0:.01:2*pi;r1=10; r2=8; x1=cos(theta)*r1; y1=sin(theta)*r1;x2=cos(theta)*r2;y2=sin(theta)*r2; plot(x1,y1,x2,y2) axis equal grid on; %加网格线 box on; %加坐标边框 axis equal %坐标轴采用等刻度2坐标控制axis函数的调用格式为:axis(xmin xmax ymin ymax zmin zmax)axis函数功能丰富,常用的格式还有:axis equal:纵、横坐标轴采用等长刻度。axis square:产生正方形坐标系(缺省为矩形)。axis auto:使用缺省设置。axis off:取消坐标轴。axis on:显示坐标轴。给坐标加网格线用grid命令来控制。grid on/off命令控制是画还是不画网格线,不带参数的grid命令在两种状态之间进行切换。给坐标加边框用box命令来控制。box on/off命令控制是加还是不加边框线,不带参数的box命令在两种状态之间进行切换。2.1.5 图形的可视化编辑MATLAB 在图形窗口中提供了可视化的图形编辑工具,利用图形窗口菜单栏或工具栏中的 有关命令可以完成对窗口中各种图形对象的编辑 处理。在图形窗口上有一个菜单栏和工具栏。菜单 栏包含File、Edit、View、Insert、Tools、 Window和Help共7个菜单项,工具栏包含11个命令按钮。2.1.6 图形窗口的分割subplot函数的调用格式为:subplot(m,n,p)该函数将当前图形窗口分成mn个绘图区,即每行n个,共m行,区号按行优先编号,且选定第p个区为当前活动区。在每一个绘图区允许以不同的坐标系单独绘制图形。例2-10 在图形窗口中,以子图形式同时绘制多根曲 线。t=0:pi/100:2*pi;y1=sin(t);y3=sin(t+0.5);y2=cos(t);y4=cos(t+0.5);subplot(2,2,1); plot(t,y1)subplot(2,2,2); plot(t,y2)subplot(2,2,3); plot(t,y3)subplot(2,2,4); plot(t,y4)2.2 其他二维图形2.2.1 其他坐标系下的二维数据曲线图1对数坐标图形MATLAB提供了绘制对数和半对数坐标曲线的 函数,调用格式为: semilogx(x1,y1,选项1,x2,y2,选项2,)semilogy(x1,y1,选项1,x2,y2,选项2,)loglog(x1,y1,选项1,x2,y2,选项2,)例2-11 绘制y=10x的对数坐标图并与直角 线性坐标图进行比较。 t=1:0.2:2; y=10.t; subplot(2,2,1);plot(t,y) subplot(2,2,2); semilogx(t,y) subplot(2,2,3); semilogy(t,y) subplot(2,2,4); loglog(t,y)2极坐标图polar函数用来绘制极坐标图,其调用格式为:polar(theta,rho,选项) 其中theta为极坐标极角,rho为极坐标矢径,选项 的内容与plot函数相似。 例2-12 绘制r=sin(t)cos(t)的极坐标图,并标记数据 点。 程序如下: t=0:pi/50:2*pi; r=sin(t).*cos(t); polar(t,r,-*);2.2.2 二维统计分析图在MATLAB中,二维统计分析图形很多,常见的有条形图、阶梯图、杆图和填充图等,所采用的 函数分别是:bar(x,y,选项)stairs(x,y,选项)stem(x,y,选项)fill(x1,y1,选项1,x2,y2,选项2,)例2-13 分别以条形图、阶梯图、 杆图和填充图形式绘制曲线 y=2sin(x)。 程序如下:x=0:pi/10:2*pi;y=2*sin(x);subplot(2,2,1);bar(x,y,g);title(bar(x,y,g);axis(0,7,-2,2);subplot(2,2,2);stai
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号