隐函数绘图
MATLAB提供了一个ezplot函数绘制隐函数图形,下面介绍其用法。
(1) 对于函数f = f(x),ezplot函数的调用格式为:
ezplot(f):在默认区间-2π<x<2π绘制f = f(x)的图形。
ezplot(f, [a,b]):在区间a<x<b绘制f = f(x)的图形。
(2) 对于隐函数f = f(x,y),ezplot函数的调用格式为:
ezplot(f):在默认区间-2π<x<2π和-2π<y<2π绘制f(x,y) = 0的图形。
ezplot(f, [xmin,xmax,ymin,ymax]):在区间xmin<x<xmax和ymin<y<ymax绘制f(x,y) = 0的图形。
ezplot(f, [a,b]):在区间a<x<b和a<y< b绘制f(x,y) = 0的图形。
(3) 对于参数方程x = x(t)和y = y(t),ezplot函数的调用格式为:
ezplot(x,y):在默认区间0<t<2π绘制x=x(t)和y=y(t)的图形。
用subplot函数
ezplot(x,y, [tmin,tmax]):在区间tmin < t < tmax绘制x=x(t)和y=y(t)的图形。
例5-15 隐函数绘图应用举例。
程序如下:
subplot(2,2,1);
ezplot('x^2+y^2-9');axis equal
subplot(2,2,2);
ezplot('x^3+y^3-5*x*y+1/5')
subplot(2,2,3);
ezplot('cos(tan(pi*x))',[ 0,1])
subplot(2,2,4);
ezplot('8*cos(t)','4*sqrt(2)*sin(t)',[0,2*pi])
在MATLAB7.0用帮忙命令可以清楚知道函数的意义与用法.
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对应列元素绘制三维曲线,曲线条数等于矩阵列数。
例5-16 绘制三维曲线。
程序如下:
t=0:pi/100:20*pi;
x=sin(t);
y=cos(t);
z=t.*sin(t).*cos(t);
plot3(x,y,z);
title('Line in 3-D Space');
xlabel('X');ylabel('Y');zlabel('Z');
grid on;
5.4.2 三维曲面
1.产生三维数据
在MATLAB中,利用meshgrid函数产生平面区域内的网格坐标矩阵。其格式为:
x=a:d1:b; y=c:d2:d;
[X,Y]=meshgrid(x,y);
语句执行后,矩阵X的每一行都是向量x,行数等于向量y的元素
的个数,矩阵Y的每一列都是向量y,列数等于向量x的元素的个数。
2.绘制三维曲面的函数
surf函数和mesh函数的调用格式为:
mesh(x,y,z,c)
surf(x,y,z,c)
一般情况下,x,y,z是维数相同的矩阵。x,y是网格坐标矩阵,z是网格点上的高度矩阵,c用于指定在不同高度下的颜范围。
例5-17 绘制三维曲面图z=sin(x+sin(y))-x/10。
程序如下:
[x,y]=meshgrid(0:0.25:4*pi);
z=sin(x+sin(y))-x/10;
mesh(x,y,z);
axis([0 4*pi 0 4*pi -2.5 1]);
此外,还有带等高线的三维网格曲面函数meshc和带底座的三维网格曲面函数meshz。其用法与mesh类似,不同的是meshc还在xy 平面上绘制曲面在z轴方向的等高线,meshz还在xy平面上绘制曲面的底座。
例5-18 在xy平面内选择区域[-8,8]×[-8,8],绘制4种三维曲面图。
程序如下:
[x,y]=meshgrid(-8:0.5:8);
z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2+eps);
subplot(2,2,1);
mesh(x,y,z);
title('mesh(x,y,z)')
subplot(2,2,2);
meshc(x,y,z);
title('meshc(x,y,z)')
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论