MATLAB 绘图函数参考

MATLAB surf 画带填充的曲面,mesh 画网格线框,都用来展示 z=f(x,y)。

语法

surf(X, Y, Z)
mesh(X, Y, Z)

第一步:先造网格 meshgrid

画曲面前必须用 meshgrid 生成网格坐标,再算 z:

[X, Y] = meshgrid(-2:0.1:2, -2:0.1:2);
Z = X.^2 + Y.^2;      % 抛物面
surf(X, Y, Z)

换成 mesh 就是线框版:

[X, Y] = meshgrid(-2:0.1:2);
Z = sin(X) .* cos(Y);
mesh(X, Y, Z)

演示用 MATLAB 自带山峰函数 peaks:

[X, Y, Z] = peaks(30);
surf(X, Y, Z)

注意事项

  • 忘记 meshgrid,或 z 的计算漏了点运算X.^2sin(X).*cos(Y)),是最常见的两个报错来源;
  • surf 是实体填充面,mesh 是镂空网格,同一数据二者成对出现。