收藏 分销(赏)

数学建模与数学实验-matlab作图.pdf

上传人:曲**** 文档编号:907092 上传时间:2024-04-07 格式:PDF 页数:35 大小:1.46MB
下载 相关 举报
数学建模与数学实验-matlab作图.pdf_第1页
第1页 / 共35页
数学建模与数学实验-matlab作图.pdf_第2页
第2页 / 共35页
数学建模与数学实验-matlab作图.pdf_第3页
第3页 / 共35页
数学建模与数学实验-matlab作图.pdf_第4页
第4页 / 共35页
数学建模与数学实验-matlab作图.pdf_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、数学建模与数学实验MATLAB作图后勤工程学院数学教研室1Mat lab作图1.曲线图Matlab作图是通过描点、连线来实现的,故在画一个曲线图 形之前,必须先取得该图形上的一系列的点的坐标(即横坐标 和纵坐标),然后将该点集的坐标传给Matlab函数画图.命令为:PLOT(X,Y,S)(y黄色点-连线m洋红。圈:短虚线 c 蓝绿色 x x-符号长短线 r 红色 4 长虚线X,Y是向量,分别表示点集的横坐标和纵坐标PLOT(X,Y)一画实线PLOT(X,Yl,S1,X,Y2,S2,,X,Yn,Sn)将多条线倒在一起例 在0,2*pi用红线画sin(x),用绿圈画cos(x).解x=linspa

2、ce(0,2*pi,30);y=sin(x);z=cos(x);Matlab litilplot(x,y,r,x,z,g0)42,符号函数(显函数、隐函数和参数方程)画图(1)ezplotezplot(6 f(x)a,b)表示在avxvb绘制显函数f=f(x)的函数图ezplot(6 f(x,y)?,xmin,xmax,y min?y max)表示在区间xminvxvxmax和yminvyvymax绘制隐函数f(x,y)=0的函数图ezplot(6 x(t)?y(t)?,tmin,tmax)表示在区间tminvtvtmax绘制参数方程x=x(t),y=y(t)的函数图5例 在O,pi上画y=c

3、os(x)的图形解输入命令ezplot(sin(x)5,O,pi)例在0,2*pi上画 x=cos 3 t,解输入命令ezplo(cos(t)八31sin(t)八30.2*pi)Matlab liti25y=sin 3 i星形图Matlab liti41例 在-2,0.5,0,2上画隐函数理+sin(xy)=0的图解输入命令ezplot(,exp(x)+sin(x*y)-2,0.5,0,2)Matlab liti406(2)fplotfplot(fun,,lims)表示绘制字符串fun指定的函数在lims=xmin,xmax 的图形.注思:1 fun必须是M文件的函数名或是独立变量为x的字符串

4、.2 fplot函数不能画参数方程和隐函数图形,但在一个图上 可以画多个图形。7例 在-L 2上画y=废+sin(3)的 图形解先建M文件myfuni.m:function Y=myfuni(x)Y=axp(2*x)+sin(3*x.A2)再输入命令:fplot(ymyfunif,1,2)例 在-2,2范围内绘制函数tanh的图形解 fplotCtanh-292)Matlab liti43Matlab liti28例X、y的取值范围都在-2%,271,画函数 tanh(x),sin(x),cos(x)的 图 形解输入命令:fplot(tanh(x),sin(x),cos(x)2*pi*-l 1

5、-1 1)Matlab liti4283.对数坐标图在很多工程问题中,通过对数据进行对数转换可以更清晰地看出数 据的某些特征,在对数坐标系中描绘数据点的曲线,可以直接地表现对数 转换.对数转换有双对数坐标转换和单轴对数坐标转换两种.用loglog函 数可以实现双对数坐标转换,用semilogx和semilogy函数可以实现单轴对 数坐标转换.loglog(Y)表示x、y坐标都是对数坐标系semilogx(Y)表示x坐标轴是对数坐标系semilogy(.)表示y坐标轴是对数坐标系plotyy有两个y坐标轴,一个在左边,一个在右边9例 用方形标记创建一个简单的loglog解输入命令:x=logsp

6、ace(-l,2);loglog(x,exp(x);s)grid on%标注格栅例创建一个简单的半对数坐标图 解输入命令:x=0:.l:10;semilogy(x0.八 x)Matlab liti37Matlab liti38例 绘制y=x3的函数图、对数坐标图、半对数坐标图Matlab liti22返回三维图形1、空间曲线2、空间曲面空间曲线1、一条曲线例 在区间0,10*pi圆|出参数曲线x=sin(t),y=cos(t),z=t.解 t=0:pi/50:10pi;plot3(sin(t)r cos(t)r t)rotat3d%旋转Matlab liti8122、多条曲线PL0T3(x,v

7、,z)其中x,y,z是都是m*n矩阵,其对应的每一列表示一条曲线.例 画多条曲线观察函数Z=(X+Y).人2.解 x=-3:0.1:3;y=l:0.1:5;X,Y=mashgrid(x,y);Z=(X+Y).A2;Matlab liti9plot3(X,Y,Z)(这里mshgrid(x,y)的作用是产生一个 以向量x为行、向量y为列的矩阵)返回13空间曲面(1)surf(x,v,z)画出数据点(X,V,z)表示的曲面数据矩阵。分别表示数据点 的横坐标、纵坐标、函数值例 画函数Z=(X+Y).人2的图形.解 x=-3:0.1:3;y=l:0.1:5;X,Y=meshgrid(x,y);Z=(X+

8、Y).A2;Matlab litillsurf(X,Y,Z)shading flat%将当前图形变得平滑14(2)Mesh(x,yA z)画网格曲面数据矩阵。分别表示数据点 的横坐标、纵坐标、函数值例 画出曲面Z=(X+Y).人2在不同视角的网格图.解 x=3:0.1:3;y=l:0.1:5;X,Y=mshgrid(x,y);Z=(X+Y).A2;msh(X,Y,Z)Matlab liti2415(3)meshz(X,Y,Z)在网格周围画一个curtain图(如,参考平面)例绘paks的网格图解输入命令:X,Y=mshgrid(-3:,125:3);Z=praks(X,Y);Mshz(X,Y,

9、Z)Matlab liti36返叵16在图形上加格;卜、图例和标注理形处理定制坐标形保持分割窗口缩放图形改变视角动 画返叵处理图形1、在图形上加格栅、图例和标注(1)GRID ON:加格栅在当前图上GRID OFF:删除格栅 12)hh=xlabel(string):在当前图形的x轴上力口图例stringhh=ylabel(string):在当前图形的y轴上力口图例string hh=zlabel(string):在当前图形的z轴上力口图例string hh=title(string):在当前图形的顶端上加图例string18例 在区间0,2*pi画sin(x)的图形,并加注图例“自变量X、“

10、函数Y、“图”,并加格栅.解 x=linspace(0,2*pi,30);y=sin(x);plot(x,y)xlabel(,自变量X,)ylab 1(1 函数Y,)title(,示意图,)grid onMatlab liti2-0 8O自变Mx56(3)hh=gtext(AstringA)命令gtext(string)用鼠标放置标注在现有的图上.运行命令gtxt(string,)时,屏幕上出现当前图形,在 图形上出现一个交叉的十字,该十字随鼠标的移动移动,当按下鼠标左键时,该标注st ring放在当前十交叉的位 置.例 在区间0,2*pi画sin(x),并分别标注“sin(x)“COS(x)

11、”.解 x=linspace(0,2*pi,30);y=sin(x);/、Matlab liti3z=cos(x);plot(x,y,x,z)gtext(sin(x),);gtext(r cos(x)-一 一 返回202、定制坐标Axis(xmin xmax ymin ymax zmin zmax)定制图形坐标x、y、z的最大、最小值Axis auto 将坐标轴返回到自动缺省值例在区间0.005,0.01显示sin(1/x)的图形。解 x=linspac(0.0001,0.01,1000);y=sin(1./x);plot(xAy)Matlab liti4axis(0.005 0.01-1 1

12、)返回213、图形保持(1)hold on hold of保持当前图形,以便继续画图到当前图上 释放当前图形窗口例 将丫=式11比)、y=cos(x)分别用点和线III出在同一屏幕上。解 x=linspace(0,2*pi,30);y=sin(x);z=cos(x)plot(x,z,:)hold on Plot(x,y)Matlab liti5(2)figure(h)新建h窗口,激活图形使其可见,并把它置于其它图形之上例 区间0,2*pi新建两个窗口分别回出丫=35(x);z=cos(x)o解 x=linspace(0,2*pi,100);y=sin(x);z=cos(x);plot(x,y)

13、;tit1(,sin(x)1);pausefigure(2);plot(xf z);tit1(,cos(x)1);返回4、分割窗口h=subplot(mrows,ncols,thisplot)划分整个作图区域为mrows*ncols块(逐行对块访问)并激活第thisplot块,其后的作图语句将图形画在该块上。subplot(mrows,ncols,thisplot)激活已划分为mrows*ncols块的屏幕中的第thisplot块,其后的作图语句将图形 画在该块上。subplot(l,l?l)命令Subplot(l,l,l)返回非分割状态。例 将屏幕分割为四块,并分别画出y=sin(x),z=

14、cos(x),a=sin(x)*cos(x),b=sin(x)/cos(x)。解x=linspac(0,2*pi,100);y=sin(x);z=cos(x);a=sin(x).*cos(x);b=sin(x)./(cos(x)+ps)subplot(2,2,1);plot(x,y)subplot(2,2,2);plot(x,z),titl(cos(x)subplot(2,2,3);plot(x,a),title(Asin(x)cos(x)subplot(2,2,4);plot(x,b)f title(Asin(x)/cos(x)A)Matlab liti7返回255、缩放图形zoom on为

15、当前图形打开缩放模式单击鼠标左键,则在当前图形窗口中,以鼠标点中的点为中心的图形放大2 倍;单击鼠标右键,则缩小2倍zoom off 关闭缩放模式例缩放y=sin(x)的图形解 x=linspace(0 A 2*piA 30);y=sin(x);Plot(x,y)zoom onMatlab litil3266.改变视角view(1)view(aAb)命令viw(a,b)改变视角到(a,b),a是方位角,b为仰角。缺省视角为(-37.5,30)o(2)view(x,y,z)view用空间矢量表示的,三个量只关心它们的比例,与数值的大小无关,x轴 view(L 0,0),y轴view(0,1,0)

16、,z轴view(0,0,1)。例 画出曲面Z=(X+Y).人2在不同视角的网格图.解 x=-3:0.1:3;y=l:0.1:5;X,Y=mashgrid(x,y);Matlab litilOZ=(X+Y).A2;subplot(2,2,1),subplot(2,2,2),subplot(2,2,3),subplot(2,2,4),msh(X,Y,Z)mash(X,Y,Z),mesh(X,Y,Z),mash(X,Y,Z),view(50f-34)view(-60A 70)view(0,L 1)返回277.动画Moviein()rgetframe,movie()函数Moviin()产生一个帧矩阵来

17、存放动画中的帧;函数get frame对当 前的图象进行快照;函数movi()按顺序回放各帧。例 将曲面paks做成动画。解 x,y,z =paaks(30);surf(x,y,z)Matlab litil4axis(-3 3-3 3-10 10)m=moviin(15);for i=l:15viw(-37.5+24夫(i-1),30)m(:,i)=getframe;ndmovie(m)-返回特殊二、三维图形、特殊的二维图形函数2、特殊的三维图形函数.返回特殊的二维图形函数1、极坐标图:polar(theta,rho,s)用角度theta(弧度表示)和极半径rho作极坐标图,用s指定线型。例

18、r=sin 20 x cos 2。的极坐标图形。解:theta=linspace(0,2*pi),rho=sin(2*theta).*cos(2*theta);polar(theta,rho,9 g5)title(Tolar plot of sin(2*theta).*cos(2*theta)9);Matlab litil5 韵占圉 cnaffpr(xvwr)、在向童XY的指定位示彩色圈.X和Y必须大小相同.例绘制seamount散点图解输入命令:load seamountscatter(x,y,5,z)Matlab liti293、例 解平面等值线图:contour(x,y,z,n)绘制n个

19、等联的三维等值线图在范围-2x2,-2y 空间等值线图:contour 3(x,y,z,n)其中n表示等值线数。例山峰的三维和二维等值线图。解x,y,z=paaks;subplot(1,2,1)contour?(x,y,z,16,1 s 1)grid,xlabel(1x-axis1)r ylabel(1y-axis1)zlab1(1z-axis1)title(1contour3 of peaks 1);subplot(1,2,2)contour(x,y,z,16,1 s 1)grid,xlabel(1x-axis1)r ylabel(1y-axis1)Matlab litil8title(co

20、ntour of peaks 1);323、三维散点图 scatters(X,Y,Z,S,C)在向量X,Y和Z指定的位置上显示彩色圆圈.向量X,Y和Z的大小必须相同.例 绘制三维散点图。解输入命令:x,y,z=sphere(16);X=x(:)*.5 x(:)*.75 x(:);Y=y(:)*.5 y(:)*.75 y(:);Z=z(:)*.5 z(:)*.75 z(:);S=repmat(1.75.5*10,prod(size(x)f1);C=repmat(1 2 3,prod(size(x),1);scatter3(X(:),Y(:),Z(:),S(:),C(:)f!filled!A vi

21、ew(-60 z 60)Matlab liti32绘制山区地貌图一 要在某山区方圆大约27平方公里范围内修建一条公路,从山脚出发经过 一个居民区,再到达一个矿区。横向纵向分别每隔400米测量一次,得到一 些地点的高程:(平面区域0二x二5600,0二y二4800),需作出该山区的地貌 图和等高线图。Matlab shanqu360014801500155015101430130012009803200ISOO15501600155016001600160013502800150012001100155016001550138010702400150012001100135014S01200115010102000139015001500140090011001060950160013201450142014001300700900850120011301250128012301040900500700Y/x12001600200024002800320036004000返回实验作业1、在同一平面中的两个窗口分别画出心形线和马鞍面。要求:1、在图形上加格栅、图例和标注2、定制坐标3、以不同角度观察马鞍面2、以不同的视角观察球面 x2+yW心=r2圆柱面 x2+/展制区域。返叵

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服