了解3D曲面图

Chr*_*ina 1 matlab plot matlab-figure

这个链接中,我有:

      | 0.1  0.2  0.3  0.4
    ----------------------
    1 | 10   11   12   13
    2 | 11   12   13   14
    3 | 12   13   14   15
    4 | 13   14   15   16

    Y = [0.1 0.2 0.3 0.4];
    X = [1 2 3 4];
    Z = [10 11 12 13; 11 12 13 14; 12 13 14 15; 13 14 15 16];
Run Code Online (Sandbox Code Playgroud)

我在matlab中使用命令"surf(X,Y,Z)"绘制了曲面Z. 我有:

在此输入图像描述

但实际上我并不了解绘制的表面.有人可以向我详细解释(在文本中)这个表面会发生什么吗?例如:我们如何观察点(2,0.2,12)?

the*_*alk 5

包括一些标签和颜色条,一切都应该清楚:

Y = [0.1 0.2 0.3 0.4];
X = [1 2 3 4];
Z = [10 11 12 13; 11 12 13 14; 12 13 14 15; 13 14 15 16];

surf(X,Y,Z)
colorbar
xlabel('X')
ylabel('Y')
zlabel('Z')
Run Code Online (Sandbox Code Playgroud)

正如评论中所建议的那样,您可以通过添加以下内容找到表面上的观点:

hold on;
plot3(2,0.2,12,'ro','MarkerSize',10,'MarkerFaceColor','r');
Run Code Online (Sandbox Code Playgroud)

它然后显示为红点.

在此输入图像描述

您的表包含16个点,这些点被绘制,其间的区域根据应用的色彩图着色,其中组的最低z值为4,这是根据文档表面高度.

实际上,如果你在情节之前包含以下行,那将是更清晰的编码:

[X,Y] = meshgrid(X,Y);
Run Code Online (Sandbox Code Playgroud)

这样,所有输入变量都具有相同的尺寸:

X =
     1     2     3     4
     1     2     3     4
     1     2     3     4
     1     2     3     4

Y =
          0.1          0.1          0.1          0.1
          0.2          0.2          0.2          0.2
          0.3          0.3          0.3          0.3
          0.4          0.4          0.4          0.4

Z =
    10    11    12    13
    11    12    13    14
    12    13    14    15
    13    14    15    16
Run Code Online (Sandbox Code Playgroud)

如果surf该功能为您执行此操作,但其他绘图功能可能无法容忍.

  • 是的,我把它包括在内,颜色由"表面高度"决定,这是最低值或最低值. (2认同)
  • 因为你要求了吗? (2认同)