我有一个矩阵Z,我想使用surf命令绘制它。 我可以使用 surf 命令很好地绘制它,但我希望 Z 的一部分不会出现在绘图中。 我假设我需要做的是使用符号
surf(X,Y,Z)
其中 X 和 Y 是定义相应 z 值的 (x,y) 坐标的矩阵。 我想知道的是我为Z中不应该绘制的点输入(x,y)坐标,即x和y应该什么都没有。
例如:
Z = 1 5 7
2 6 0
3 0 0
4 0 0
X = 1 1 1
2 2 _
3 _ _
4 _ _
Y = 1 2 3
1 2 _
1 _ _
1 _ _
空间里会有什么?我不能输入像 0 这样的数字,因为所有值都将转到原点。 如果有更好的方法可以使用,我不必使用 surf()。
将 Z 中您不想绘制的所有值设置为 NaN。例如,如果您不想绘制 Z 的零,则
Z(Z==0)=NaN;
会做这个伎俩。您不需要对 X 和 Y 执行此操作。如果你不想绘制的 Z 集更复杂,你应该以某种方式获取 Z(i,j) 并将其设置为 NaN。