【发布时间】:2017-03-03 19:40:43
【问题描述】:
我无法理解轮廓。
到目前为止我所理解的是contours 是一种在 2d 平面中表示 3d 图形的方法。它通过将一个包含 2 个变量的函数绘制为具有相同值的曲线来实现。
现在如果我这样做:
z=[1 4; 10 7];
contour(z);
我明白了:
我阅读了文档,上面写着:
contour(Z) 绘制矩阵 Z 的等高线图,其中 Z 被解释为 相对于 x-y 平面的高度。 Z 必须至少为 2×2 包含至少两个不同值的矩阵。 x 值 对应于 Z 的列索引,y 值对应于 Z 的行索引。轮廓级别是自动选择的。
因此对于x=1,y=1: z=1、x=2,y=1: z=4 等等。但是我不明白如何将其解释为上面显示的contour 图。
如果我写:
contour(X1, X2, vals, [0.5 0.5], 'b'); 其中X1、X2 和vals 是大小相等的矩阵,vals 是只有0s 和1s 的矩阵。我不明白[0.5 0.5] 的论点是做什么的。我阅读了文档,其中指出:
contour(Z,v) 绘制矩阵 Z 的等高线图,等高线位于 在单调递增向量 v 中指定的数据值。 在特定值处显示单个轮廓线,将 v 定义为 两个元素都等于所需轮廓的二元素向量 级别。
我无法理解这句话。
【问题讨论】:
-
尝试
hold on;z=[1 4; 10 7]; contour3(z);surf(z,'facealpha',0.5)以了解这些线条在视觉上的含义。contour3在 3D 中绘制线条而不是挤压它们