首页 > 解决方案 > Matlab - 等高线图如何自动生成级别?

问题描述

我正在使用 contourf 在 MatLab 上生成具有指定级别数的填充等高线图。

根据文件(https://www.mathworks.com/help/matlab/ref/contourf.html#mw_9088c636-4036-4e00-bd43-f6c5632b63ec)它说将级别指定为标量值n以显示轮廓线n 自动选择的级别(高度)。

我想知道它如何自动选择阈值?选择阈值的算法是什么?以级别为 1 为例。

非常感谢!

标签: matlabcontour

解决方案


正如评论中所说,它只是确保n您的最大值和最小值之间存在分界线。

证明:

n=10;
z=peaks;
[m,c]=contour(z,10,'ShowText','on');
levels=linspace(min(z(:)),max(z(:)),n+2);
isequal(c.LevelList,levels(2:end-1))

推荐阅读