我在理解轮廓时遇到了一些麻烦。
到目前为止我所理解的是contour
是一种在二维平面中表示三维图形的方法。它通过绘制2个变量的函数作为曲线来实现,函数具有相同的值。
现在,如果我这样做:
z=[1 4; 10 7];
contour(z);
我明白了:
我阅读了文档,并说:
轮廓(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
是仅0
s和{{的矩阵1}}秒。我无法理解论证1
的作用。我阅读了文件说明:
轮廓(Z,v)绘制矩阵Z的等高线图,轮廓线为 在单调递增的向量v。To中指定的数据值 在特定值处显示单个轮廓线,将v定义为a 两个元素向量,两个元素都等于所需的轮廓 水平。
我无法理解这句话。
答案 0 :(得分:0)
第一个轮廓的问题是只有4个值。尝试像
这样的东西x = 0:0.1:10;
y = 0:0.1:10;
z = sin(x') * cos(y);
contour(z)
对于第二件事,这意味着如果你想只看到特定的轮廓,请将它们输入为矢量v。在上面的例子中:
contour(z, [0.1, 0.2, 0.3])
将显示0.1,0.2和0.3的等高线。 要有一条轮廓线,你不能只有(z,0)但需要(z,[0,0])