奇怪的Matlab画图技巧系列3–光滑变化的曲面图

毕业季马上要到了,给大家总结一些我平常用到的奇特但是好用的Matlab画图技巧


光滑变化的三维曲面

三维曲面展示是目前MATLAB上人眼最容易直观观察的多维矩阵内容一种形式,因此三维矩阵的画图在很多的论文里都有涉及。常用的画图函数有mesh,surf,contourf,plot3等等

因为论文实际打印图片存在固定视角无法旋转的特别,为了详尽的表述一整个二维矩阵的内容,MATLAB中三维绘图除了用Z轴表示数据外,将不同的Z轴对应不同的颜色表示。

下面依次介绍几种三维曲面画图的函数,函数用法建议自行阅读帮助文件。

MESH(X,Y,Z)

Matlab中的曲面绘图都是将XY轴离散化后形状网格,Mesh就是对这个网格再加上Z轴的高度,得到一个彩色一个网状曲面图,如图所示。

通常情况下大家构建的网络比较密,会常用mesh来三维绘图,这样的曲面还是比较好看的,但是如果数据突变比较严重的话这种图会没那么好看,差点意思

SURF(X,Y,Z)

surf是在mesh的基础上给每个网眼的区域填上颜色,然后把线的颜色换成黑色,如图所示。

 

如果网格很密黑色曲线也会很密,影响观感,但是去掉黑色曲线,图片也会陷入不利用观察的情况。

Coutour

等高线图,去掉了高度的(类似俯视图)显示改为纯用颜色观察大小,适合进行一些定性的分析。

上面的图片太空不太适合替代SURF和mesh

CONTOURF

为了使得更容易观测,我们对Contourf增加一些配置

就可以得到一副更好看的三维图的显示,


画图代码

  1. [X,Y] = meshgrid(-2:.2:2, -4:.4:4);
  2. Z = X .* exp(-X.^2 – Y.^2);
  3. figure(1);
  4. contourf(X,Y,Z,100,’linestyle’,’none’)

奇怪的Matlab画图技巧系列

  1. 保存高清大图
  2. 不一样的线条标记
  3. 光滑变化的曲面图
  4. 动图生成

 

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注