matlab 经典作图

合集下载

Matlab绘图教程(大量实例)

Matlab绘图教程(大量实例)

例4 用不同标度在同一坐标内绘制曲线 y1=0.2e-0.5xcos(4πx) 和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); plotyy(x,y1,x,y2);
三维图形
1 三维曲线 plot3函数与plot函数用法十分相似,其调用格式为: plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,…,xn,yn,zn,选项 n) 其中每一组x,y,z组成一组曲线的坐标参数,选项 的定义和plot函数相同。当x,y,z是同维向量时, 则x,y,z 对应元素构成一条三维曲线。当x,y,z是同 维矩阵时,则以x,y,z对应列元素绘制三维曲线, 曲线条数等于矩阵列数。
图形的可视化编辑
MATLAB 6.5版本在图形窗口中提供了可视化的 图形编辑工具,利用图形窗口菜单栏或工具栏中 的有关命令可以完成对窗口中各种图形对象的编 辑处理。
在图形窗口上有一个菜单栏和工具栏。菜单栏包 含File、Edit、View、Insert、Tools、Window和 Help共7个菜单项,工具栏包含11个命令按钮。
MATLAB绘图
二维数据曲线图
plot函数的基本调用格式为: plot(x,y) 其中x和y为长度相同的向量,分别用于存储x坐标和y坐标 数据。 例1 在0≤x≤2区间内,绘制曲线 y=2e-0.5xcos(4πx) 程序如下: x=0:pi/100:2*pi; y=2*exp(-0.5*x).*cos(4*pi*x); plot(x,y)
例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)

十节MATLAB绘图ppt课件

十节MATLAB绘图ppt课件
画线 plot([0 1],[0 2]) x=2:2:8; plot([x;x],[zeros(1,length(x));cos(pi*x/20)], 'k')
%axis([0 10 0 1])
MATLAB绘图
画圆 theta=linspace(0,2*pi); plot(1+0.5*cos(theta),2+0.5*sin(theta)) axis equal %使图形对称
MATLAB绘图
图形注释和可视化提高 1. 使用坐标轴,图形标题,曲线标注,填充
区域和添加文本 2. 改变轴、曲线和文本的属性 3. 使用希腊字母、数学符号、上下标等
MATLAB绘图
例 x=0:0.05:6; plot(x,cos(x),'k',x,1./cosh(x),'k',[4.73 4.73],[-1
1],'k') xlabel('x') ylabel('value of function') title('visualizaton of two intersecting curves') text(4.8,-.5,'x=4.73') text(2.1,.3,'1/cosh(x)') text(1.2,-.4,'cos(x)')
MATLAB绘图
plot中属性设置 x=-pi:pi/10:pi; y=tan(sin(x))-sin(tan(x)); plot(x,y,'-- rs', 'LineWidth',2, … 'MarkerEdgeColor','k', … 'MarkerFaceColor','g', … 'MarkerSize',10)

MATLAB_曲面作图

MATLAB_曲面作图

曲 面 作 图一、常见的曲面作图(Matlab 7.0)1、椭圆锥面曲面方程: 22221)tan ()tan (z y x =+θθ 取θ1=30o ,θ2=30o 用MATLAB 作图:M 文件代码:u=[0:pi/600:2*pi]; v=[0:pi/600:2*pi];[U,V]=meshgrid(u,v);E1=pi/6;E2=pi/6;X=U*tan(E1).*cos(V);Y=U*tan(E2).*sin(V);Z=U;mesh(X,Y,Z);axis auto;绘制出来的图形:2、椭圆抛物面曲面方程:22)()(by a x z += 取a=4,b=3 在MATLAB 中作图:M 文件代码:ezsurf('4*u*cos(v)', ...'3*u*sin(v)','u^2', ...[-pi/2,3*pi/2,0,2*pi]);axis auto;绘制出来的图形:3、椭球面曲面方程:1)()()(222=++cz b y a x 取a=8,b=6,c=4 在MATLAB 中作图:M 文件代码:u=[0:pi/60:2*pi]; v=[0:pi/60:2*pi];[U,V]=meshgrid(u,v);A=8;B=6;C=4;X=A*cos(V).*cos(U);Y=B*cos(V).*sin(U);Z=C*sin(V);surf(X,Y,Z);axis equal;绘制出来的图形:4、双曲抛物面曲面方程:22)()(b y a x z -=取a=6,b=5在MATLAB 中作图:M 文件代码: x=[-5:0.01:5]; y=[-5:0.01:5];[X,Y]=meshgrid(x,y);a=6;b=5;Z=(X/a).^2-(Y/b).^2;mesh(X,Y,Z);axis auto;绘制出来的图形:5、单叶双曲面 曲面方程:1)()()(222=-+cz b y a x 取a=3,b=3,c=5 在MATLAB 中作图:M 文件代码:ezsurf('3*cosh(u).*cos(v)', ...'3*cosh(u).*sin(v)','5*sinh(u)', ...[-pi/2,pi/2,0,2*pi]);axis auto绘制出来的图形:6、双叶双曲面 曲面方程:1)()()(222=--by a x c z 取a=3,b=4,c=7 在MATLAB 中作图:M 文件代码:ezsurf('3*tan(u)*cos(v)', ...'4*tan(u)*sin(v)','7*sec(u)', ...[-pi/2,3*pi/2,0,2*pi]);axis auto;绘制出来的图形:二、旋转曲面曲面方程:))(,sin)(,cos)((),(vguvfuvfvur (0≤u≤2π,a≤v≤b)1、取f(v)=tanv,g(v)=5v,在MATLAB中作图:A、取a=2.5,b=3时,M文件代码:ezsurf('tan(v)*cos(u)', ...'tan(v)*sin(u)','5*v', ...[0,2*pi,2.5,3]);axis auto;绘制出来的图形:B、取a=-4,b=4时M文件代码:ezsurf('tan(v)*cos(u)', ...'tan(v)*sin(u)','5*v', ...[0,2*pi,-4,4]);axis auto;绘制出来的图形:2、取f(v)=sinv,g(v)= 2v,在MATLAB中作图:A、取a=0,b=2时,M文件代码:ezsurf('sin(v)*cos(u)', ...'sin(v)*sin(u)','2*v', ...[0,2*pi,0,2]);axis auto;绘制出来的图形:B、取a=-4,b=4时,M文件代码:ezsurf('sin(v)*cos(u)', ...'sin(v)*sin(u)','2*v', ...[0,2*pi,-3,3]);axis auto;绘制出来的图形:三、螺旋面曲面方程:))(,sin)(,cos)((),(buvguvfuvfvur+=(0≤u≤2π,a≤v≤b)1、取f(v)= v,g(v)=v,a=-5,b=5在MATLAB中作图:M文件代码:ezsurf('v*cos(u)', ...'v*sin(u)','v+8*u', ...[0,2*pi,-5,5]);axis auto;绘制出来的图形:2、取f(v)= v2,g(v)=2v,a=-10,b=10在MATLAB中作图:M文件代码:ezsurf('v.^2*cos(u)', ...'v.^2*sin(u)','2*v+8*u', ...[0,2*pi,-10,10]);axis auto;绘制出来的图形:四、曲面交线——空间曲线1、参数方程曲线方程为:sinsin cosx t y t tz t=⎧⎪=⎨⎪=⎩M文件为:t=0:pi/30:6*pi;x=cos(t);y=sin(t).*cos(t);z=t;plot3(x,y,z)图形为:2、两个曲面交线:两个曲面分别为:22210070671042474 y+ 02307620044429080987933635116253x y z x x +-=++=和 d=0.05;[x,y,z]=meshgrid(0:d:4,-2:d:2,-2:d:3);v=x.^2/4+y.^2/4+z.^2/4-x;p=isosurface(x,y,z,v,0);fz=@(x,y) (307620*x)/2908093 + (10070*y)/28793 + 671042474/363511625;[xx yy]=meshgrid(0:d:4,-2:d:2);zz=fz(xx,yy);f=@(x,y) x.^2/4+y.^2/4+(fz(x,y)).^2/4-x;c=contours(xx,yy,f(xx,yy),[0 0]);xxx=c(1,2:end);yyy=c(2,2:end);zzz=fz(xxx,yyy);mesh(xx,yy,zz,'edgecolor','none','facecolor','r','facealpha',0.3);hold on patch(p,'edgecolor','none','facecolor','b','facealpha',0.3);plot3(xxx,yyy,zzz,'k','linewidth',1);hold offaxis equal;。

第五章 matlab作图

第五章 matlab作图

2.5
3
5.1 二维图形 图形的可视化编辑
MATLAB 在图形窗口中提供了可视化的图形 编辑工具,利用图形窗口菜单栏或工具栏中的有关 命令可以完成对窗口中各种图形对象的编辑处理。 在图形窗口上有一个菜单栏和工具栏。菜单栏 包含File、Edit、View、Insert、Tools、Window和 Help共7个菜单项,工具栏包含11个命令按钮。
5.1 二维图形
5.1 二维图形
例 在同一坐标中,可以绘制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) grid on; %加网格线 box on; %加坐标边框 axis equal %坐标轴采用等刻度
5.1 二维图形 例
>> x=linspace(0,2*pi,30); >> y=sin(x); >> plot(x,y) >> title('Figure: Fixed Axis Scaling') >> axis([0,1.5*pi ,-1, 2]) % change axis limits
Figure: Fixed Axis Scaling 1
3 2.5 2 1.5 1 0.5 0 -0.5 -1 -1.5 -2 0 2 4 6 8
10
12
14
5.1 二维图形
例 在同一坐标内绘制曲线 y1=0.2e-0.5xcos(4πx) 和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);

matlab绘图(一维、二维、三维)

matlab绘图(一维、二维、三维)

>> t=[0:0.1:20];
>> x=t;
>> y=sin(t); >> z=cos(t); >> plot3(x,y,z)
第25页,共42页。
数学实验
数学实验
先画点 (x,y,z),后连线,构成曲面网格图
点: ( xij , yij , zij ) i 1,,m, j 1,,n
x11 x12
第13页,共42页。
同时绘制多个函数图像
数学实验
plot(x1,y1,s1,x2,y2,s2, ... ,xn,yn,sn)
等价于:
hold on
plot(x1,y1,s1) plot(x2,y2,s2) ...
plot(xn,yn,sn)
属性选项 可以省略
第14页,共42页。
图形的其他属性
数学实验
Property: linewidth, markersize, fontsize, fontweight, fontname, …
第9页,共42页。
图形的其他属性
坐标轴标注 xlabel(’text’) 或 ylabel(’text’)
例:
数学实验
第10页,共42页。
图形的其他属性
添加图例 legend(string1,string2, ...) >> legend('cos(x)');
Matlab 绘图
数学实验
如何画出 y=sin(x) 在 [0, 2*pi] 上的图像?
第1页,共42页。
Matlab 绘图
数学实验
手工作图
找点: x=0, pi/3, pi/2, 2*pi/3, pi, …

四讲Matlab绘图ppt课件精品文档

四讲Matlab绘图ppt课件精品文档

p l o t (. . ., s t r ) 使用字符串s t r指定的颜
色和线型进行绘图。表1 中列出了s t r可
以取的值。
2019/10/12
4
一、二维图形:表一


.

^
正三角
*
星号
v
倒三角
OO
s
正方形
++
d
菱形
X 乘号
p
五角星
<
左三角
h
六角星
>
右三角
none 无点
2019/10/12
5
2019/10/12
26
三、三维图形
m e s h ( X,Y,Z ) 将矩阵Z中的各个元素作 为矩形网格上的高度,对这些值绘图,
并且将相邻的点连接形成三维网格表面 图。颜色由高度,即Z中的元素指定。
s u r f ( X , Y , Z) 绘制出由坐标(Xi j, Yi j, Zi j)确定的表面图形。如果X和Y分别是长 度为m和n的向量,那么, Z必须为m×n 的矩阵,并且表面是由(Xj, Yi, Zi j)来定 义的。
一、二维图形:表一
线型
颜色
--. : none
实线 m 虚线 b 点划线 c 点线 w 无线 r
品红色 蓝色 灰色 白色 红色
颜色
k
g
绿色 y
黑色 黄色
2019/10/12
6
一、二维图形
1.2彗星图形
c o m e t ( x , y ) 绘制向量y对向量x的彗星 轨线。如果只给出一个向量,则用该向 量对其下标值绘图。
2019/10/12
10

Matlab绘图超级经典

线型
: -. -实线 点线 点划线 虚线 . 点 o 小圆圈 x 叉号 + 加号 • 星号 s 方格 d 菱形
点标记
v 下三角 ^ 上三角 < 左三角 > 右三角 p 五角星 h 六角星 b g r c 蓝色 绿色 红色 青色
颜色
m y k w 棕色 黄色 黑色 白色
x = 0:0.2:2*pi; y = sin(x); plot(x,y,'r-o')
plot(x,y)
线性代数中: 列 × 行 = 矩阵
0 1 2 3 4 5 6 7
plot(X1,Y1,LineSpec,...,Xn,Yn,LineSpec)
按照三个参数Xn, Yn, LineSpec画线,其中LineSpec指 定了线型,点标记和画线的颜色,也可以混合使用三参数 Xn,Yn,LineSpec和二参数Xn,Yn: plot(X1,Y1,X2,Y2,LineSpec,X3,Y3)。 LineSpec的三种属性可以全部指定,也可以只指定其中某一个 或两个,排列顺序任意
plot(x,exp(x),'-s') grid on
semilogx( ) 与 semilogy( )作图比较
x = logspace(-1,2);
semilogx(x,exp(x),'-s') grid on
x = logspace(-1,2);
semilogy(x,exp(x),'-s') grid on
• • • • • • 1、绘制2d图形的基本步骤 2、直角坐标系绘图:plot( ) 3、对数坐标绘图:loglog( ), semilogx( ), ... 4、双y轴绘图:plotyy( ) 5、极坐标系绘图:polar( ) 6、二维绘图函数汇总

matlab画图大全[资料]

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')。

Matlab绘图教程(大量实例PPT)

MATLAB绘图二维数据曲线图pplot函数的基本调用格式为:x,y) )plot(plot(x,y其中x和y为长度相同的向量,分别用于存储x坐标和y坐标数据。

数据例1 在0≤x2π区间内,绘制曲线y=2e-0.5x cos(4πx)1≤区间内绘制曲线205x(4)程序如下:x=0:pi/100:2*pi;cos(4*pi*x);0.5*x).*cos(4*pi*x);y=2*exp(--0.5*x).*y=2*exp(x,y))plot(x,yplot(x yplot(x y)例2 绘制曲线。

绘制曲线程序如下:t=0:0.1:2*pi;x=t.sin(3t);x=t*sin(3*t);y=t.*sin(t).*sin(t); plot(x,y););plot(x,y数最简单的调用格式是包含个输参数plot函数最简单的调用格式是只包含一个输入参数:p()plot(x)在这种情况下,当x是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出条连续曲线,标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘制折线图。

绘制多根二维曲线1.plot函数的输入参数是矩阵形式时数的输参数是矩阵形式时(1) 当x是向量,y是有一维与x同维的矩阵时,则绘制出多根不同颜色的曲线。

曲线条数等于y矩阵的另一维数,x被作为这些曲线共同的横坐标。

(2) 当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。

纵坐标分别绘制曲线曲线条数等于矩阵的列数(3) 对只包含一个输入参数的plot函数,当输入参数对包含个输参数的数当输参数是实矩阵时,则按列绘制每列元素值相对其下标的曲线曲线条数等于输入参数矩阵的列数的曲线,曲线条数等于输入参数矩阵的列数。

当输入参数是复数矩阵时,则按列分别以元素实部和虚部为横、纵坐标绘制多条曲线。

2.含多个输入参数的plot函数含多个输参数的数调用格式为:plot(x1,y1,x2,y2,…,xn,yn)(1) 当输入参数都为向量时,x1和y1,x2和y2,…,(1)当输入参数都为向量时xn和yn分别组成一组向量对,每一组向量对的长度可以不同每一向量对可以绘制出一条曲线度可以不同。

matlab 经典作图要点

二维图形的绘制二维图形是将平面坐标上的数据点连接起来的平面图形。

可以采用不同的坐标系,出直角坐标系外,还可以采用对数坐标系、极坐标。

数据点可以用向量或矩阵形式给出,类型可以是实型或复型。

二维图形输出,利用MATLAB的二维绘图函数可以很容易作出需要的各种图形。

plot函用于绘制直角坐标的二维曲线。

使用方plot(x,y,linespeci),plot(x,y)先描出点(x(i),y(i)),然后用直线依次相连,其中参数linespeci指明了线条的类型,标记符号和画线用的颜色。

lot是绘制二维曲线的基本命令,但在使用此函数之前,我们需先定义曲线上每一点的x 及y坐标若要在同一个画面上画出多条曲线,只需将坐标对依次放入plot函数即可。

以下各例题中的程序都是在MATLAB编辑器中函数图象的绘制:先是简单的一次函数图像的绘制;简单的一次函数在数学图像绘制中是比较简单的,在MATLAB语言中用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=linspace(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('sin(x)-1'); %给正弦函数添加标题axis([0,2*pi,-1,1]); %设置坐标subplot(2,1,2); %选择2x1个区中的1号区stem(x,y); %生成x 与y 的杆形图title('sin(x)-2)'); %给正弦函数添加标题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('tangent(x)'); %给正切函数图象添加图标axis([0,2*pi,-40,40]); %设置坐标subplot(4,4,8); %选择4x4中的8号区plot(x,ct); %产生x 与ct 的二维曲线title('cotangent(x)'); %给余切函数图象添加图标axis([0,2*pi,-40,40]); %设置坐标运行图像如图2所示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

二维图形的绘制二维图形是将平面坐标上的数据点连接起来的平面图形。

可以采用不同的坐标系,出直角坐标系外,还可以采用对数坐标系、极坐标。

数据点可以用向量或矩阵形式给出,类型可以是实型或复型。

二维图形输出,利用MATLAB的二维绘图函数可以很容易作出需要的各种图形。

plot函用于绘制直角坐标的二维曲线。

使用方plot(x,y,linespeci),plot(x,y)先描出点(x(i),y(i)),然后用直线依次相连,其中参数linespeci指明了线条的类型,标记符号和画线用的颜色。

lot是绘制二维曲线的基本命令,但在使用此函数之前,我们需先定义曲线上每一点的x 及y坐标若要在同一个画面上画出多条曲线,只需将坐标对依次放入plot函数即可。

以下各例题中的程序都是在MATLAB编辑器中函数图象的绘制:先是简单的一次函数图像的绘制;简单的一次函数在数学图像绘制中是比较简单的,在MATLAB语言中用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=linspace(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('sin(x)-1'); %给正弦函数添加标题axis([0,2*pi,-1,1]); %设置坐标subplot(2,1,2); %选择2x1个区中的1号区stem(x,y); %生成x 与y 的杆形图title('sin(x)-2)'); %给正弦函数添加标题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('tangent(x)'); %给正切函数图象添加图标axis([0,2*pi,-40,40]); %设置坐标subplot(4,4,8); %选择4x4中的8号区plot(x,ct); %产生x 与ct 的二维曲线title('cotangent(x)'); %给余切函数图象添加图标axis([0,2*pi,-40,40]); %设置坐标运行图像如图2所示。

图2 正弦 余弦 正切 余切函数二维图像简单的指数函数,三角函数,幂函数等虽然麻烦,但是都用手工能够绘制出来。

但是超越函数图形手工几乎是绘不出来的,matlab 强大的功能只要简单的几句程序就能解决这一问题。

问题3:绘制曲线有x y x π2sin 5.0-= 的函数图形。

程序如下:x=0:pi/100:2*pi; %生成一个始数行向量y=2*exp(-0.5*x).*sin(2*pi*x); %函数y 的表达式plot(x,y) %生成二维图形运行结果如图3所示。

图3 曲线y=.以上是用matlable 在一个窗口中绘制一个图像,这个不是很难, 但是在同一窗口中同时绘制出以上三种图像是相当难的,更重要的是在同一窗口中同时绘制几个图像时,必须要给图像加以说明,要让图像很明了的显示出来,让人一眼就能分辨出那个函数对应的是哪一个图像。

Matlab 强大的功能就能很容易的实现,matlab 中用plot 函数绘制二维图像时用plot (x,y,’k.’)这种形式就可以给不同函数图形设置不同的线型,不同的颜色。

还可以用legend 函数给图像加图例,用xlabel 和ylabel 函数来给图像的坐标轴见坐标说明。

在同一窗同时绘制一次函数图象,二次函数图象和超越函数的图象,图像并做一比较。

问题4,在[-3,3]范围作出函数2x y =,x x y x 8sin 10-= ,x y 3=的图形。

程序如下:x=0:0.001:2*pi; %生成一个从0到2步长为0.001的行向量y=10.*exp(-x).*sin(8*x); %函数y 的表达式plot(x,y,'k-') %生成x 与y 的二维图形,线性为实线,颜色为黑色 hold on ; %保持图形x=-3:0.1:1; %生成一个从-3到1步长为0.1的行向量y=x.^2; %函数y 的表达式plot(x,y,'k.') %生成x 与y 的二维图形,线性为虚线,颜色为黑色 hold on ; %保持图形x=1:0.1:3; %生成一个从-3到1步长为0.1的行向量y=3*x; %函数y 的表达式plot(x,y,'k.') %生成x 与y 的二维图形,线性为虚线,颜色为黑色 hold on ; %保持图形legend('y=10e^[-x]sin8x','y=x^2','y=3x') %加图例xlabel('\itx'); %x轴坐标说明ylabel('\ity'); %y轴坐标说明title('Is Limit Existing When x=1?') %图像添加标题运行结果如图4所示。

图4 同一窗口中的多个函数图形在数学课程中我们可以用matlab明确解决分段函数问题如:假如我们要解决当x=28时要求这个分段函数相对应的解。

问题5求分段函数解决这个问题的程序如下:x=28; %输入x的值为28for x=-10:5 %x是从-10到5变化,步长为1if x<-1 %判断条件x的值y=0; %符合第一个条件时为0elseif x>=-1&x<0 %不满足的话判断其他条件y=-3*x.^2+x; %得到相应值elseif x>=0&x<pi %另外的条件y=sin(x)+x; %对应的值else 另外的条件y=pi; %y的值end %结束条件语句end %结束for循环y %输出y的值结果是:y = 3.1416除此之外,我们还可以解决分段的一阶常微分函数。

例如,已知一阶常微分方程,其中gu的初值为u(0)=0,求t>=0时的解。

画出图像,并求u的极大值程序如下:f un=inline(['((13-u)/18-(sin(10*t/pi)>0)*','1.18*sin(10*t/pi)-u/6.7)/0.047'],'t','u'); %调用函数[t,u]=ode45(fun,[0,10],[0]); %t和u构成向量plot(t,u) %绘制t和u关系曲线运行结果如图5所示。

图5 一阶分段微分函数的图形画出这个图时,我们可以轻而易举的解出题目所提出的要求。

当t>=0时u的极大值,我们可以在图上读出,而不去经行复杂的计算。

通过这样的程序,我们可以很快的解出相应的函数值,而我们不再去麻烦的判断。

另外我们可以求解分段函数的积分,微分等计算。

下面我们来用它解决分段函数的图形问题。

上面我们讨论了用MATLAB语言绘制分段函数的问题,上面仅仅是冰山一角罢了。

下面我们用它来绘制一个更有意思的分段函数,这样,我们可以用MATLAB语言来做一些有意思的图形,用来增加我们学习的乐趣。

问题6,形状如囧字的图像绘制,其程序如下:x=0:0.001:2*pi; %x的取值范围及步长c=0.1; %常数c的值y=5./cos(x); %y的值y(abs(x-pi/2)<c | abs(x-3*pi/2)<c)=NaN; %函数的条件极其取值plot(x,y); %绘制函数图像运行结果如图6所示:图6 形状似囧字的分段函数这个函数图形意思吧,这不但是一个函数图形,而且还是我们的一个汉字的样子—囧字。

这也正是这门学科吸引人之处,这样我们不仅学到了知识而且还增加了不少的兴趣。

以上是对二维图像的绘制,下面我们来讨论用matlab 绘制三角函数和指数函数。

隐函数图像的绘制:如果给定了函数 显式的表达式,可以先设置自变量向量,然后根据表达式计算出函数向量,从而用plot 函数绘制出图形。

但如果函数用隐函数形式给出,则很难用上述方法绘制出图形。

Matlab 提供了ezplot 函数绘制隐函数图形,下面是隐函数图像的绘制。

例如绘制隐函数051533=+-+xy y x 的图形,参数方程⎩⎨⎧==t t x t t x sin 3sin cos 3sin 的图形。

程序如下:subplot(1,3,1); %选择1x3中的1号区ezplot('cos(tan(pi*x))',[0,1]);axis equal %在区间0<x<1和0<y<1绘制 subplot(1,3,2); % 分区,选择1x3中的2号区ezplot('x^3+y^3-5*x*y+1/5',[-3,3]) %在区间-3<x<3和-3<y<3的区间绘制图像subplot(1,3,3); %分区,选择1x3中的3号区ezplot('sin(3*t)*cos(t)','sin(3*t)*sin(t)',[0,pi])%在区间0<x <2和0<y<2的区间绘制图像运行图形如图7所示。

相关文档
最新文档