TEB matlab 三维
时间: 2025-02-28 09:31:31 浏览: 46
### MATLAB 中的三维绘图教程和技术
#### 创建简单的三维线图
要创建一条简单的一维曲线在三维空间中的表示,可以使用 `plot3` 函数。此函数接受三个向量作为输入参数来定义坐标轴方向上的数据点位置。
```matlab
t = linspace(-10*pi, 10*pi, 1000);
st = sin(t);
ct = cos(t);
figure;
plot3(st, ct, t); % 绘制螺旋线
grid on; % 显示网格
xlabel('X Axis');
ylabel('Y Axis');
zlabel('Z Axis');
title('Helix Plot Using plot3 Function');
```
该代码片段展示了如何利用正弦和余弦函数生成一组代表螺旋形状的数据,并通过调用 `plot3()` 来呈现这些数据形成的轨迹[^1]。
#### 表面图与网格图
对于更复杂的几何结构比如曲面,则可借助于 `surf` 或者 `mesh` 命令完成可视化工作。前者会填充颜色而后者仅描绘线条框架。
```matlab
[X,Y] = meshgrid(-8 : 0.5 : 8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
subplot(1,2,1)
surf(X,Y,Z,'EdgeColor','none')
colormap jet
colorbar
view([-37.5 30])
axis tight
title({'Surface Plot'; '(with interpolated shading)'})
shading interp
subplot(1,2,2)
mesh(X,Y,Z)
colormap cool
colorbar
view([-37.5 30])
axis tight
title('Mesh Plot (wireframe)')
```
上述例子中先构建了一个二维矩阵用于存储高度值 Z ,接着分别采用了表面着色(`surf`) 和网状连线 (`mesh`) 的方式展示相同的数据集.
#### 散点图
当处理离散型分布样本时,可以选择 `scatter3` 方法来进行表达:
```matlatb
x = randn(100,1)*2;
y = randn(100,1)*2;
z = peaks(x,y);
scatter3(x,y,z, 'filled') ;
caxis([min(z(:)) max(z(:))]);
colorbar
xlabel('X axis label');
ylabel('Y axis label');
zlabel('Z axis label');
title('Scatter Plot of Peaks Data');
```
这段脚本随机产生了若干组服从标准正态分布的数值并以此为基础计算对应的峰值响应 z 。最后以彩色圆圈的形式标记出了各个观测点的位置关系.
阅读全文
相关推荐



















