三维曲线和曲面的绘制在实际中经常用到,MATLAB正式由于其强大的绘图功能,在工程和科学界已经广泛使用。这里演示一下,怎样根据离散点数据绘制三维曲线或者曲面。
绘制三维图形,首先,需要XY平面的网格数据,这就是meshgrid函数所实现的内容。比如
x = 1:3;
y = 10:14;
[X, Y] = meshgrid(x, y);
其结果为:
X =
1 2 3
1 2 3
1 2 3
1 2 3
1 2 3
Y =
10 10 10
11 11 11
12 12 12
13 13 13
14 14 14
其网格示意如下,其中XY平面中网格的交点就是上面的X和Y数据值。
此主题相关图片如下:a.jpg
因此,根据x和y值绘制三维图形,其步骤就是,如果x和y只是代表取值范围的向量, 那么首先生成网格数据,然后根据函数关系得到z值,使用surf或者plot3绘制曲面或者曲线。
下为一个示意:
x = 0:0.1:2*pi;
y = x;
[X, Y] = meshgrid(x, y);
Z = sin(X) + sin(Y);
% 三维曲线
plot3(X, Y, Z)
% 三维曲面
figure
surf(X, Y, Z)