MATLAB三维绘图

MATLAB三维绘图

目录

1.三维曲线

绘制三维曲线的基本函数

调用格式为:
plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,…,xn,yn,zn,选项n)
其中每一组x,y,z组成一组曲线的坐标参数,选项的定义和plot函数相同。

(1)当x,y,z是同维向量时,则x,y,z 对应元素构成一条三维曲线。
(2)当x,y,z是同维矩阵时,则以x,y,z对应列元素绘制三维曲线,曲线条数等于矩阵列数。

例:绘制空间曲线

t=0:pi/50:2*pi;
x=8*cos(t);
y=4*sqrt(2)*sin(t);
z=-4*sqrt(2)*sin(t);
plot3(x,y,z);

输出结果
《MATLAB三维绘图》

2.三维曲面

三维曲面绘制过程

(1)生成平面网格坐标矩阵

过程
① 在xy平面选定一矩形区域 D=[a,b]×[c,d];
② 将[a,b]在x方向分成m份,将[c,d]在y方向分成n份,由各划分点分别作平行于两坐标轴的直线,将区域D分成m×n个小矩形,生成代表每一个小矩形顶点坐标的平面网格坐标矩阵;

生成方法
①利用矩阵运算生成

x=a:dx:b; y=(c:dy:d)';
X=ones(size(y))*x;
Y=y*ones(size(x));

②利用meshgrid函数生成

x=a:dx:b; y=c:dy:d;
[X,Y]=meshgrid(x,y);

(2)利用绘制三维曲面函数绘制曲面

绘制函数:

mesh函数
用于绘制三维网格图。在不需要绘制特别精细的三维曲面图时,可以通过网格图来表示三维曲面。
调用格式:mesh(x,y,z,c)

surf函数
用于绘制三维曲面图,各线条之间的补面用颜色填充。
调用格式:surf(x,y,z,c)

plot3函数

:一般情况下,x,y,z是维数相同的矩阵,x,y是网格坐标矩阵,z是网格点上的高度矩阵。c称为色标矩阵,用于指定在不同高度下的颜色范围。当c省略时,c=z,颜色的设定是正比于图形的高度(z值)的,这样就可以得出层次分明的三维图形。
当x,y省略时,把z矩阵的列下标当作x轴坐标,行下标作为y轴坐标,然后绘制三维曲面图。
当x,y是向量时,要求x的长度等于z矩阵的列数,y的长度等于z矩阵的行数,x、y向量元素的组合构成网格点的x、y坐标,z坐标则取自z矩阵,然后绘制三维曲面图。

例:绘制z=sin(y)cos(x)所表示的曲面

x=0:0.1:2*pi;
[x,y]=meshgrid(x);			%生成平面网格坐标矩阵
z=sin(y).*cos(x);
mesh(x,y,z);					%绘制曲面
xlabel('x');				%标明x轴名字
ylabel('y');
zlabel('z');
title('mesh');

《MATLAB三维绘图》

x=0:0.1:2*pi;
[x,y]=meshgrid(x);
z=sin(y).*cos(x);
surf(x,y,z);
xlabel('x');
ylabel('y');
zlabel('z');
title('surf');

《MATLAB三维绘图》

x=0:0.1:2*pi;
[x,y]=meshgrid(x);
z=sin(y).*cos(x);
plot3(x,y,z);
xlabel('x');
ylabel('y');
zlabel('z');
title('plot3-1');
grid;

《MATLAB三维绘图》

3.其他三维曲面

函数图形
bar3(y) ; bar3(x,y)三维条形图
pie3(x,explode)三维饼图
fill3(x,y,z,c)三维实心图
scatter3(x,y,z,c)三维散点图
stem3(z);stem3(x,y,z)三维杆图
quiver3(x,y,z,u,v,w)三维箭头图
    原文作者:路遥芝麻
    原文地址: https://blog.csdn.net/luyaozhima/article/details/107444957
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞