MATLAB总结 - 三维图形、等高线 - 互联网资料
个人总结的一些使用的方法
I. 三维曲线 plot3
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对应列元素绘制三维曲线,曲线条数等于矩阵列数。
绘制三维曲线,程序如下:
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;
II. 三维曲面 surf (meshgrid, caxis), surfc, mesh, meshc, meshz, sphere, cylinder, peaks
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函数的调用格式为:
surf(x,y,z,c); mesh(x,y,z,c)
一般状况下,x,y,z是维数相同的矩阵。x,y是网格坐标矩阵,z是网格点上的高度矩阵,c用于指定在不同高度下的颜范围。
此外,还有带等高线的三维网格曲面函数meshc和带底座的三维网格曲面函数meshz。其用法与mesh类似,不同的是meshc还在xy平面上绘制曲面在z轴方向的等高线,meshz还在xy平面上绘制曲面的底座。
surf程序如下:
xx=1;
for ii=1:0.1:10
yy=1;
for jj=1:0.1:20
f1(xx,yy)=ii; f2(xx,yy)=jj; ff(xx,yy)=function(ii,jj);
yy=yy+1;
end
xx=xx+1;
end
surf(f1,f2,ff);
或者:
ii=-10:0.1:10; jj=-10:0.1:10;
[II,JJ]=meshgrid(ii,jj);
ff=-(II.^2+JJ.^2);
surf(II,JJ,ff); shading interp
1
个人总结的一些使用的方法
surfc:
mesh程序如下:
ii=-10:0.1:10; jj=-10:0.1:10; [II,JJ]=meshgrid(ii,jj);
ff=-(II.^2+JJ.^2);
surf(II,JJ,ff);
meshc:meshz:
注:shading interp可用于去除网格;caxis()可用于调整颜的最大值和最小值
3. 标准三维曲面
sphere函数的调用格式为:[x,y,z]=sphere(n)
cylinder函数的调用格式为:[x,y,z]= cylinder(R,n)
2
个人总结的一些使用的方法
MATLAB还有一个peaks 函数,称为多峰函数,常用于三维曲面的演示。
peaks程序如下:
t=0:pi/20:2*pi;
[x,y,z]= cylinder(2+sin(t),30);
subplot(2,2,1);
surf(x,y,z);
subplot(2,2,2);
[x,y,z]=sphere;
surf(x,y,z);
subplot(2,1,2);
[x,y,z]=peaks(30);
surf(x,y,z);
III. 其他三维图形 bar3, stem3, pie3 , fill3
在介绍二维图形时,曾提到条形图、杆图、饼图和填充图等特别图形,它们还可以以三维形式消失,使用的函数分别是 bar3、stem3、pie3 和fill3。
bar3函数绘制三维条形图,常用格式为:bar3(y); bar3(x,y)
stem3函数绘制离散序列数据的三维杆图,常用格式为:stem3(z); stem3(x,y,z)
pie3函数绘制三维饼图,常用格式为:pie3(x)
fill3函数等效于三维函数fill,可在三维空间内绘制出填充过的多边形,常用格式为:fill3(x,y,z,c)
contour3 函数绘制三维等高线
contour3(x,y,z,n)…..绘制n条等高线图
contour3(x,y,z,v)……在v值上标识
c=contourc3(x,y,z,n)…..x-y数据
clabel(c)…….加注高度标识
IV. 等高线、二维彩图 contour, clabel, contourc, contour3, contour, pcolor, surface
1. 等高线1 contour
功能 曲面的等高线图
用法 contour(z) 把矩阵z中的值作为一个二维函数的值,等高曲线是一个平面的曲线,平面的高度v是Matlab自动取的;
contour(x,y,z) (x,y)是平面z=0上点的坐标矩阵,z为相应点的高度值矩阵。效果同上;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论