MATLAB学习与使用:使用矩阵绘制三维图形

时间:2024-03-15 16:06:01

MATLAB绘制三维图形

1.基本的绘图命令
1)plot3函数 plot3(x,y,z)%x,y,z为向量或者矩阵
注意x,y,z全为向量时向量长度必须相同
MATLAB学习与使用:使用矩阵绘制三维图形MATLAB学习与使用:使用矩阵绘制三维图形
plot3(x,y,z,'b.','MarkerSize',0.5) % MarkerSize 表示点的大小,b.表示绿色的点。
eg.绘制三维螺旋线(向量为参数)和三维图形(矩阵为参数)

x=0: pi/50: 10*pi;
y=sin(x);
z=cos(x);
plot3(x,y,z,'*b','markersize',5);
xlabel('X');%设置坐标说明
ylabel('Y');
zlabel('Z');
grid on%画图添加网格线
figure(2)% 重新开启一个绘画窗口
[x,y] = meshgrid (-2: 0.1:2, -2: 0.1:2);
z=x.*exp(-x. ^ 3-y.^2);
plot3(x,y,z)
grid on

MATLAB学习与使用:使用矩阵绘制三维图形
2)网图函数

函数名 说明
mesh 三维网格图
meshc 将网格与等高线结合
meshz 屏蔽的网格图
meshgrid 生成网格点

3)着色函数 Surf (x,y,z,c)
eg.分别绘制三维面图,带等高线的面图,带屏蔽图的面图

	x = -18: 0.5 :18;
    y = x`;
    a = ones (size (y)) * x;
    b = y * ones (size (x));
    c = sqrt (a.^2 + b.^2) + eps;
    z = sin(c) ./ c;
    mesh (z);
    figure(2)
    z = hilb (10);
    mesh (z);
    figure(3)
    [x,y] = meshgrid([-4:0.5:4]);
    z = sqrt(x.^ 2 + y.^2);
    meshc(x,t,z)    %contour surface
    figure(4)
    [x,y]=meshgrid([-4:0.5:4]);
    mesh(z)           %cover the grid
    colormap([0 0 1])
    figure(5)
    [x,y] = meshgrid ([-4:0.5:4]);
    z= sqrt(x.^ 2 + y.^2);
    surf(z)

MATLAB学习与使用:使用矩阵绘制三维图形
2.特殊的图形函数

函数名 说明
bar3 三维条形图
comet3 三维彗星轨迹图
ezgraph3 控制绘制三维彗星图
pie3 三维饼状图
scatter3 三维散射图
stem3 三维离散数据图
surfc 着色图等高线结合
trisurf 三角形表面图
trimesh 三角形网格图
waterfall 瀑布图
cylinder 柱面图
sphere 球面图

eg.绘制三维饼状图/着色等高线图/三维等高线图、柱面图、球面图