matlab经典作图
- 格式:docx
- 大小:711.46 KB
- 文档页数:28
对如下数据,做出截面图,并按相应的颜色值设置数据;x y z s1 2 2 251 3 3 211 4 4 202 5 5 192 6 7 31这样一组s与x,y,z没有直接函数表达式关系的数据希望能够用slice函数绘出切面图,也就是说,在x=1这个切面上,应该有对应s=25 21 20这三种用颜色表示的函数值。
首先,看到slice命令的帮助文件中有个例子:[x,y,z] = meshgrid(-2:.2:2,-2:.25:2,-2:.16:2);v = x.*exp(-x.^2-y.^2-z.^2);xslice = [-1.2,.8,2]; yslice = 2; zslice = [-2,0];slice(x,y,z,v,xslice,yslice,zslice)colormap hsv这里的slice前三个参数,必须构成网格数据,如图:通过:[x,y,z] = meshgrid(-2:.2:2,-2:.25:2,-2:.16:2);figure;view(3);hold on;for i = 1 : size(x, 1)for j = 1 : size(x, 2)for k = 1 : size(x, 3)plot3(x(i, j, k), y(i, j, k), z(i, j, k), '.');endendend这些点构成了网格数据所以,我们需要制造网格数据,进行截面操作;close all;clc;clear;A = [1 2 2 251 3 3 211 4 4 202 5 5 192 6 7 31];x = A(:, 1)';y = A(:, 2)';z = A(:, 3)';% 提取有效数据xb = min(x);xe = max(x);yb = min(y);ye = max(y);zb = min(z);ze = max(z);sb = min(s);se = max(s);x1 = linspace(xb, xe, 30);y1 = linspace(yb, ye, 30);z1 = linspace(zb, ze, 30);s0 = linspace(sb, se, 30);% 对有效数据分割[x1 y1 z1] = meshgrid(x1, y1, z1);% 生成网格数据点s1 = zeros(size(x1, 1), size(x1, 2));for i = 1 : size(s1, 1)s1(i, :) = s0;endst = zeros(size(x1, 1), size(x1, 2), size(x1, 3));for i = 1 : size(st, 3)st(:, :, i) = s1;ends1 = st;% 构造第四维数据s1figure;hold on;view(3);slice(x1, y1, z1, s1, x, [], []);这样就做出来所谓的截面图这个是通过slice(x1, y1, z1, s1, x, y, []);来做的,但没有颜色值设置选项;close all;clc;clear;A = [1 2 2 251 3 3 211 4 4 202 5 5 192 6 7 31];x = A(:, 1)';y = A(:, 2)';z = A(:, 3)';s = A(:, 4)';% 对有效数据分割xb = min(x);xe = max(x);yb = min(y);ye = max(y);zb = min(z);ze = max(z);y1 = linspace(yb, ye, 30);z1 = linspace(zb, ze, 30);x1 = ones(size(y1, 1), size(y1, 2)) * x(1);[x1, y1] = meshgrid(x1, y1);z = zeros(length(z1));for i = 1 : size(z, 1)z(i, :) = z1;endsurf(x1, y1, z);% 这个时候产生了对应于x1的网格截面图,下面来定颜色[a, b] = size(z);rgb = ones(a, b);len = length(s)+1;slic = floor(linspace(1, a, len));for i = 1 : length(slic)-1rgb(slic(i):slic(i+1)-1, :) = rgb(slic(i):slic(i+1)-1, :)*s(i);end% 产生颜色值figure;surf(x1, y1, z, rgb);这个是设置了颜色的图。
案例28使用MATLAB 绘制专业图形绘制曲线和曲面图案例主要信息提示 ● 案例内容:使用MATLAB 进行专业作图。
● 关键词:MATLAB ,作图,二维作图,三维作图 ● 建议课时:2课时● 适合专业:理工科各专业●光盘中的数字资源:二维曲线绘图M 文件graph_line.m三维曲面绘图M 文件graph_surface.m一、 实验内容实验内容1.绘制曲线图在1个绘图窗口的4个不同子窗口中分别绘制以下曲线: ①在子窗口1中绘制两条二维曲线,分别为:0.510.2cos(4)x y e x π-=和0.522cos()x y e x π-=并显示网格线。
②在子窗口2中绘制两条二维曲线,分别为:0.512x y e -=和2cos(2)y x π=并添加标题、x/y 轴名称、图形说明和图例。
③在子窗口3中绘制一条极坐标曲线,如下:sin()cos()r t t =④在子窗口4中绘制一条极三维螺旋线。
全部4个子窗口绘制效果如图28-1所示。
图28-1曲线绘制效果图实验内容2.绘制曲面图在1个绘图窗口的4个不同子窗口中分别绘制以下曲面:①在子窗口1和子窗口2中以不同着色方式绘制两个球面。
②在子窗口3和子窗口4中以不同视角绘制两个直径相等的圆管相交的图形。
全部4个子窗口绘制效果如图28-2所示。
图28-1曲面绘制效果图二、预备知识2.1 MATLAB绘图功能简介MA TLAB软件提供了丰富的图形表达功能,包括常用的二维图形和三维图形。
其中,各种二维图形近30种,三维图形20多种。
应用MA TLAB除了能作一般的曲线、散点图、条形图等,还能绘制流线图、三维矢量图等工程实用图形。
下面我们介绍一些基本的二维和三维绘图函数。
2.2 二维图形的绘制二维图形是将平面坐标上的数据点连接起来的平面图形。
可以采用不同的坐标系,如直角坐标、对数坐标、极坐标等。
二维图形的绘制是其他绘图操作的基础。
2.2.1绘制二维曲线的plot函数在MATLAB中,plot函数是最简单、最基本而且应用最为广泛的线性绘图函数,利用它可以在二维平面上生成线段、曲线和参数方程曲线等的函数图形。
matlab作图(⼦图+图像重叠显⽰)1、matlab中如何在⼀个图上显⽰多个图像,例如同时显⽰2*2个图像,则需使⽤subplot(m,n,p)命令,其中m和n表⽰m⾏n列,p表⽰第⼏个图像例:在⼀个图上显⽰函数 y = exp(-0.5*x)*sin(20*x) y = exp(-1.2*x)*sin(20*x) y = exp(-2*x)*sin(20*x) y = exp(-2.5*x)*sin(20*x)代码为:x = [0:0.01:5];y = exp(-0.5*x).*sin(20*x);subplot(2,2,1);plot(x,y),xlabel('x'),ylabel('exp(-0.5*x).*sin(20*x)'),axis([0 5 -1 1]);y = exp(-1.2*x).*sin(20*x);subplot(2,2,2);plot(x,y),xlabel('x'),ylabel('exp(-1.2*x).*sin(20*x)'),axis([0 5 -1 1]);y = exp(-2*x).*sin(20*x);subplot(2,2,3);plot(x,y),xlabel('x'),ylabel('exp(-2*x).*sin(20*x)'),axis([0 5 -1 1]);y = exp(-2.5*x).*sin(20*x);subplot(2,2,4);plot(x,y),xlabel('x'),ylabel('exp(-2.5*x).*sin(20*x)'),axis([0 5 -1 1]);以上代码也可以使⽤循环语句来实现。
2、图像重叠显⽰,可使⽤hold on命令实现,另外可以使⽤linspace(a,b)或linspace(a,b,n)命令实现在a到b之间均匀地取出100个点或n个点。
matlab绘图大全Matlab绘图系列之高级绘图一、目录1.彗星图二维彗星图三维彗星图2.帧动画3.程序动画4.色图变换5.Voronoi图和三角剖分Voronoi图三角剖分6.四面体7.彩带图彩带图三维流彩带图8.伪彩图9.切片图切片图切片轮廓线图10.轮廓图显示轮廓线显示围裙瀑布效果带光照模式的阴影图11.函数绘图轮廓线、网格图、曲面图、轮廓网格图轮廓曲面图、二维曲线、极坐标曲线图、自定义函数12.三维图形控制视点灯光效果色彩控制二、图形示例1.彗星图二维彗星图t=0:.01:2*pi;x=cos(2*t).*(cos(t).^2);y=sin(2*t).*(sin(t).^2);comet(x,y);title('二维彗星轨迹图')hold onplot(x,y)三维彗星图a=12;b=9;T0=2*pi;%T0是轨道的周期T=5*T0;dt=pi/100;t=[0:dt:T]';f=sqrt(a^2-b^2);%地球与另一焦点的距离th=12.5*pi/180;%未经轨道与x-y平面的倾角E=exp(-t/20);%轨道收缩率x=E.*(a*cos(t)-f);y=E.*(b*cos(th)*sin(t));z=E.*(b*sin(th)*sin(t));plot3(x,y,z,'g')%画全程轨线hold on,sphere(20);%画地球axis offtitle('卫星返回地球示例')x1=-18*T0;x2=6*T0;y1=-12*T0;y2=12*T0;z1=-6*T0;z2=6*T0;axis([x1 x2 y1 y2 z1 z2])% axis([-15 10 -15 10 -10 10])axis equalcomet3(x,y,z,0.02);%画运动轨线hold off2.帧动画Z=peaks;surf(Z)%绘制网格表面图axis tightset(gca,'nextplot','replacechildren');%设定axis覆盖重画模式title('帧动画播放示例')for j=1:20surf(sin(2*pi*j/20)*Z,Z)%重新绘制网格表面图,这里后面一个Z当成了颜色矩阵F(j)=getframe;%创建帧endmovie(F,20)%播放动画20次3.程序动画t=0:pi/50:10*pii=1;h=plot3(sin(t(i)),cos(t(i)),t(i),'*','erasemode','none');%设定擦除模式grid onaxis([-2 2 -2 2 -1 10*pi])title('程序动画示例')for i=2:length(t)set(h,'xdata',sin(t(i)),'ydata',cos(t(i)),'zdata',t(i));drawnowpause(0.01)end4.色图变换load spineimage(X)colormap coolspinmap(10)5.Voronoi图和三角剖分Voronoi图rand('state',5)x=rand(1,10);y=rand(1,10);subplot(131)voronoi(x,y);%绘制voronoi图形axis equalaxis([-0.2 1.6 -0.5 2.5])subplot(132)[vx,vy]=voronoi(x,y);plot(x,y,'r+',vx,vy,'b-');%应用返回值绘制axis equalaxis([-0.2 1.6 -0.5 2.5])subplot(133)rand('state',5);x=rand(10,2);[v,c]=voronoin(x);%返回值v参数维voronoi顶点矩阵,返回值c 参数为voronoi元胞数组for i=1:length(c)if all(c{i}~=1)patch(v(c{i},1),v(c{i},2),i);%应用色图iendendaxis equalaxis([-0.2 1.6 -0.5 2.5])box on三角剖分[x,y]=meshgrid(1:15,1:15);tri=delaunay(x,y);z=peaks(15);trimesh(tri,x,y,z)6.四面体d=[-1 1];[x,y,z]=meshgrid(d,d,d);%定义一个立方体x=[x(:);0];y=[y(:);0];z=[z(:);0];%[x,y,z]分别为加上中心的立方体顶点X=[x(:) y(:) z(:)];Tes=delaunayn(X);%返回m×n的数组值tetramesh(Tes,X);%绘制四面体图camorbit(20,0);%旋转摄像目标位置7.彩带图彩带图[x,y]=meshgrid(-3:.5:3,-3:.1:3);z=peaks(x,y);ribbon(y,z)三维流彩带图load wind%打开保存的数据lims=[100.64 116.67 17.25 28.75 -0.02 6.86];%定义坐标轴范围[x,y,z,u,v,w]=subvolume(x,y,z,u,v,w,lims);%lims来定义数据子集[sx sy sz]=meshgrid(110,20:5:30,1:5);%定义网格点verts=stream3(x,y,z,u,v,w,sx,sy,sz,.5);%计算彩带顶点cav=curl(x,y,z,u,v,w);%计算卷曲角速度wind_speed=sqrt(u.^2+v.^2+w.^2);%计算流速h=streamribbon(verts,x,y,z,cav,wind_speed,2);%绘制流彩带图view(3)8.伪彩图n=6%定义轮数r=(0:n)'/n;%定义轮的半径theta=pi*(-n:n)/n;%定义轮的扇区角X=r*cos(theta);Y=r*sin(theta);%定义网格顶点C=r*cos(2*theta);%定义色图pcolor(X,Y,C)%绘制伪彩图axis equal tight9.切片图切片图[x,y,z] = meshgrid(-2:.2:2,-2:.25:2,-2:.16:2);v = x.*exp(-x.^2-y.^2-z.^2);xslice = [-1.2,.8,2]; yslice = 2; zslice = [-2,0];slice(x,y,z,v,xslice,yslice,zslice)colormap hsv切片轮廓线图[x y z v]=flow;%打开水流数据h=contourslice(x,y,z,v,[1:9],[],[0],linspace(-8,2,10));%切片轮廓线view([-12 30])10.轮廓图显示轮廓线[x,y,z]=peaks;subplot(1,2,1)meshc(x,y,z);%同时画出网格图与轮廓线title('meshc 网格图与轮廓线')axis([-inf inf -inf inf -inf inf]);subplot(1,2,2)surfc(x,y,z);%同时画出曲面图与轮廓线title('surfc 曲面图与轮廓线')axis([-inf inf -inf inf -inf inf]);显示围裙[x y z]=peaks;meshz(x,y,z);瀑布效果[X,Y,Z]=peaks(30);waterfall(X,Y,Z)带光照模式的阴影图[x,y]=meshgrid(-3:1/8:3);z=peaks(x,y);surfl(x,y,z);shading interp%着色处理colormap(gray);%灰度处理axis([-3 3 -3 3 -8 8])11.函数绘图轮廓线、网格图、曲面图、轮廓网格图%图1绘制轮廓线、网格图、曲面图、轮廓网格图subplot(221)f=['3*(1-x)^2*exp(-(x^2)-(y+1)^2)-10*(x/5-x^3-y^5)*exp(-x^2-y^2)-1/3*exp(-(x+1)^2-y^2)'];%定义双变量x、y的函数式ezcontour(f,[-3,3],49)%x、y为[-3 3],网格为49×49subplot(222)ezmesh('sqrt(x^2+y^2)');subplot(223)ezsurf('real(atan(x+i*y))')%经过滤波,如果相同数据surf绘图没有滤波subplot(224)ezmeshc('y/(1+x^2+y^2)',[-5,5,-2*pi,2*pi])%x、y的数值范围分别为[-5 5]、[-2*pi 2*pi]轮廓曲面图、二维曲线、极坐标曲线图、自定义函数%图2绘制轮廓曲面图、二维曲线、极坐标曲线图、自定义函数figure(2)subplot(221)ezsurfc('sin(u)*sin(v)')subplot(222)ezplot('x^2-y^4');subplot(223)ezpolar('1+cos(t)')subplot(224)fplot('myfun',[-20 20])function Y=myfun(x)Y(:,1)=200*sin(x(:))./x(:);Y(:,2)=x(:).^2;三维曲线图%绘制三维曲线图figure(3)ezplot3('sin(t)','cos(t)','t',[0,6*pi])12.三维图形控制视点View图形旋转subplot(121)surf(peaks);title('旋转前图形');subplot(122)h=surf(peaks);rotate(h,[1 0 1],180)title('旋转后图形');灯光效果%灯光效果(1)camlight(2)light(3)lightangle(4)lighting(5)materialsphere;camlight色彩控制%色彩控制(1)缺省设置colordef、whitebg(2)色图colormap(3)浓淡处理shadingload flujetimage(X)colormap(jet)subplot(131)sphere(16)axis squareshading flattitle('Flat Shading')subplot(132)sphere(16)axis squareshading facetedtitle('Faceted Shading') subplot(133)sphere(16)axis squareshading interptitle('Interpolated Shading')。
实验作业2 MATLAB作图1、用plot,fplot 绘制函数y=cos(tan( x))的图形。
解:代码如下:x=linspace(-0.5,0.5,30);y=cos(tan(pi*x));plot(x,y)结果:fplot('[cos(tan(pi*x))]',[-0.5,0.5])结果:注意事项: fplot('[cos(tan(pi*x))]',[-0.5,0.5])不能写成fplot('[cos(tan(pi*x))]',(-0.5,0.5))否则是错误程序。
2. 用ezplot绘制函数exy-sin(x+y)=0 在[-3, 3]上的图形。
解:代码如下:ezplot('exp(x*y)-sin(x+y)=0',[-3,3])3.用matlab以动画的方式绘制出摆线x=a(t-sint) y=a(1-cost) (a自己赋值)的渐屈线clear;clc;close;a=1;syms tx=a*(t-sin(t));y=a*(1-cos(t));ezplot(x,y,[0,2*pi]),grid on ;hold on;dy=diff(y)/diff(x);dyy=diff(dy)/diff(x);xx=x-(1+dy^2)*dy/dyy;%渐屈线的坐标yy=y+(1+dy^2)/dyy;M=50;t=0;xxx=subs(xx);yyy=subs(yy);H1=plot(xxx,yyy,'r');hold on;grid on ;axis([0,7,-2.5,2.5]);x1=subs(x);y1=subs(y);H2=plot([x1,xxx],[y1,yyy],'k--');H3=plot(x1,y1,'ko');H4=plot(xxx,yyy,'ro');tt=linspace(0,2*pi,M);for i=1:Mpause(0.2);t=tt(1:i);xxx=subs(xx);yyy=subs(yy);x1=subs(x);y1=subs(y);set(H1,'xdata',xxx,'ydata',yyy);set(H2,'xdata',[x1(i),xxx(i)],'ydata',[y1(i),yyy(i)]);set(H3,'xdata',x1(i),'ydata',y1(i));set(H4,'xdata',xxx(i),'ydata',yyy(i));end绘制函数⎩⎨⎧-=-=)cos 1()sin (t a y t t a x 在]2,0[π∈t 上的图形。
二维图形的绘制二维图形是将平面坐标上的数据点连接起来的平面图形。
可以采用不同的坐标系,出直角坐标系外,还可以采用对数坐标系、极坐标。
数据点可以用向量或矩阵形式给出,类型可以是实型或复型。
二维图形输出,利用MATLAB勺二维绘图函数可以很容易作出需要的各种图形。
plot 函用于绘制直角坐标的二维曲线。
使用方plot(x,y,linespeci),plot(x,y) 先描出点(x(i) , y(i)),然后用直线依次相连,其中参数linespeci指明了线条的类型,标记符号和画线用的颜色。
lot是绘制二维曲线的基本命令,但在使用此函数之前,我们需先定义曲线上每一点的x 及y坐标若要在同一个画面上画出多条曲线,只需将坐标对依次放入plot函数即可。
以下各例题中的程序都是在MATLAB®辑器中函数图象的绘制:先是简单的一次函数图像的绘制;简单的一次函数在数学图像绘制中是比较简单的,在MATLA语言中用plot函数就能实现。
问题1,简单的一次函数y=3x的函数图像。
程序如下:x=0:1:10; %生成一个从0到10的步长为1的行向量y=3*x; %变量y的表达式plot(x,y) %生成二维图形运行结果如图1所示。
图1 y=3x 的图形有时在数学中我们要把三角函数图像同时绘制出来,对它们的周期,极值等函数性质进行比较,在数学中我们自己很难解决,但是matlab中的图形窗口分割函数一subplot就能够实现。
其调用格式为:subplot (m,n,p )。
下面我们就用matlab 中的subplot函数进行窗口风隔,绘制同一变量的各种三角函数图象。
问题2,在一个图形窗口中以子图形式同时绘制正弦,余弦,正切,余切曲线。
程序如下:x=li nspace(0,2*pi,600; %x的取值范围及步长y=sin(x); %正弦函数的值给yz=cos(x); %余弦函数的值赋给zt=sin(x)./(cos(x)+eps); %正切函数赋变量tct=cos(x)./(sin(x)+eps); %与其函数赋变量ctsubplot(2,2,1); %选择2x2个区中的1号区stairs(x,y); %生成x与x的阶梯图title( 'si n(x)-1' ); %給正弦函数添加标题axis([0,2*pi,-1,1]); %设置坐标subplot(2,1,2); %选择2x1个区中的1号区stem(x,y); %生成x与y的杆形图title( 'si n(x)-2)' ) J%给正弦函数添加标题axis([0,2*pi,-1,1]); %设置坐标subplot(4,4,3); %选择4x4个区中的3号区plot(x,y); % 产生x与z的二维曲线title( 'cos(x)' ); %给余弦函数图象添加图标axis([0,2*pi,-1,1]); %设置坐标subplot(4,4,4); %选择4x4中的4号区plot(x,z); %产生x与z的二维曲线title( 'cos(x)' ); %给余弦函数图象添加图标axis([0,2*pi,-1,1]); %设置坐标subplot(4,4,7); %选择4x4中的7号区plot(x,t) ;% 产生x与t的二维曲线title( 'tan ge nt(x)' ); %给正切函数图象添加图标axis([0,2*pi,-40,40]); %设置坐标subplot(4,4,8); %选择4x4中的8号区plot(x,ct); %产生x与ct的二维曲线title( 'cota ngen t(x)' ); %給余切函数图象添加图标axis([0,2*pi,-40,40]); %设置坐标运行图像如图2所示□12 3 4 5 6图2 正弦余弦正切余切函数二维图像简单的指数函数,三角函数,幕函数等虽然麻烦,但是都用手工能够绘制出来。
但是超越函数图形手工几乎是绘不出来的,matlab强大的功能只要简单的几句程序就能解决这一冋题。
问题3:绘制曲线有y 0.5x sin2 x的函数图形。
程序如下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*si n(2*pi*x); Plot(x,y)运行结果如图3所示。
图3 曲线y=t 「、丄二取.以上是用matlable 在一个窗口中绘制一个图像,这个不是很难,但是在同 一窗口中同时绘制出以上三种图像是相当难的, 更重要的是在同一窗口中同时绘 制几个图像时,必须要给图像加以说明,要让图像很明了的显示出来,让人一眼 就能分辨出那个函数对应的是哪一个图像。
Matlab 强大的功能就能很容易的实 现,matlab 中用plot 函数绘制二维图像时用plot (x,y, ' k.')这种形式就可 以给不同函数图形设置不同的线型,不同的颜色。
还可以用 lege nd 函数给图像 加图例,用xlabel 和ylabel 函数来给图像的坐标轴见坐标说明。
在同一窗同时绘制一次函数图象,二次函数图象和超越函数的图象,图像并 做一比较。
问题4,在[-3,3]范围作出函数y x 2, y 10x x sin8x , y 3x 的图形。
程序如下:%函数y 的表达式%生成x 与y 的二维图形,线性为实线,颜色为黑色 %保持图形 %生成一个从-3到1步长为0.1的行向量 %函数y 的表达式%生成x 与y 的二维图形,线性为虚线,颜色为黑色 %保持图形%生成一个从-3到1步长为0.1的行向量 %函数y 的表达式%生成x 与y 的二维图形,线性为虚线,颜色为黑色 %保持图形,'y=xA2' , 'y=3x' ) %加图例%生成一个始数行向量%函数y 的表达式 %生成二维图形x=0:0.001:2*pi; %生成一个从0到2":步长为0.001 的行向量y=10.*exp(-x).*si n(8*x); plot(x,y,'k-')hold on;x=-3:0.1:1;y=x.A2;plot(x,y,'k.')hold on; x=1:0.1:3;y=3*x;plot(x,y, 'k.')hold on ;lege nd( 'y=10e A [-x]si n8x'xlabel( '\itx' ); %乂轴坐标说明ylabel( '\ity' ); %y 轴坐标说明ti tle( 'Is Limit Exist ing When x=1?' ) % 图像添加标题运行结果如图4所示。
图4 同一窗口中的多个函数图形在数学课程中我们可以用matlab明确解决分段函数问题如:假如我们要解决当x=28时要求这个分段函数相对应的解。
问题5求分段函数解决这个问题的程序如下:x=28;for x=-10:5if x<-1y=0;elseif x>=-1&x<0y=-3*x.A2+x;elseif x>=0& x<piy=si n( x)+x;else%输入x的值为28%x是从-10到5变化,步长为1%判断条件x的值%符合第一个条件时为0%不满足的话判断其他条件%得到相应值% 另外的条件%对应的值另外的条件y=pi;end%y的值%结束条件语句endy结士果是. 结果疋.y = 3.1416%结束for循环%输岀y的值除此之外,我们还可以解决分段的一阶常微分函数分方程,。
例如,已知一阶常微其中u 的初值为u(0)=0,求t>=0时的解。
画出图像,并求u 的极大值 程序如下:f un=i nli ne(['((13-u)/18-(si n(10*t/pi)>0)*','1.18*s in (10*t/pi)-u/6 .7)/0.047'],'t','u'); [t,u]=ode45(fu n,[0,10],[0]); plot(t,u)运行结果如图5所示。
%调用函数%t 和u 构成向量绘制t 和u 关系曲线。
当 t>=0时u图5画出这个图时,我们可以轻而 的极大值,我们可以在图上读出, 通过这样的程序,我们可以很, 判断。
另外我们可以求解分段函数的积分 段函数的图形问题。
上面我们讨论了用MATLAB©言绘制分段函数的问题, 罢了。
下面我们用它来绘制一个更有意思的分段函数, 语言来做一些有意思的图形,用来增加我们学习的乐趣。
问题6,形状如囧字的图像绘制,其程序如下: x=0:0.001:2*pi;%x 的取值范围及步长 c=0.1; %常数c 的值 勺解出题目所提 经行复杂的计 而我们不再去麻烦的 F 面我们来用它解决分 上面仅仅是冰山一角 这样,我们可以用MATLAB y=5./cos(x); y(abs(x-pi/2)<c | abs(x-3*pi/2)<c)=NaN; plot(x,y);运行结果如图6所示:%y 的值 %函数的条件极其取值 %绘制函数图像这个函数图形意思吧,这不但是一个函数图形,而且还是我们的一个汉字的样子一囧 字。
这也正是这门学科吸引人之处, 这样我们不仅学到了知识而且还增加了不少的兴趣。
以上是对二维图像的绘制,下面我们来讨论用隐函数图像的绘制:如果给定了函数 matlab 绘制三角函数和指数函数。
显式的表达式,可以先设置自变量向量,然后根plot 函数绘制出图形。
但如果函数用隐函数形式给出, Matlab 提供了 ezplot 函数绘制隐函数图形,下面是隐函数,[0,1]);axis equal %在区间 0<x<1 和 0<y<1 绘制%分区,选择1x3中的2号区,[-3,3])%在区间-3<x<3和-3<y<3的区间绘制图%分区,选择1x3中的3号区 ,'sin(3*t)*sin(t)',[0,pi])%在区间0<x <2和0<y<2 _的区间绘制图像运行图形如图7所示。
图6形状似囧字的分段函数据表达式计算出函数向量,从而用 则很难用上述方法绘制出图形。
图像的绘制。
例如绘制隐函数y 35xy1 0的图形, 5x 参数方程x sin 3t cost ” 的sin 3tsi nt图形。
程序如下:subplot(1,3,1); ezplot( 'cos(ta n( pi*x))' subplot(1,3,2);ezplot( 'x A 3+y A 3-5*x*y+1/5'像subplot(1,3,3); ezplot( 'si n(3*t)*cos(t)'%选择1x3中的1号区图7 隐函数图形有时数学中的有些函数用极坐标来处理更简单, matlab 提供的 专门用来绘制极坐标图形,其调用格式为polar (thera , rho ,选项) 为极坐标极角,rho 为极坐标矢径,选项的内容与 plot 相似。