Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 如何使用surf()命令在非矩形域中绘制矩阵_Matlab_Plot - Fatal编程技术网

Matlab 如何使用surf()命令在非矩形域中绘制矩阵

Matlab 如何使用surf()命令在非矩形域中绘制矩阵,matlab,plot,Matlab,Plot,我有一个矩阵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

我有一个矩阵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。

如果你在Z N/A中设置这些零,会发生什么?N/A是什么意思?我试着给它赋值为N/A,Matlab说找不到变量N“N/A”也不起作用。啊,是的,抱歉的意思是NaN,不记得令牌是什么:(谢谢!我一直在尝试null和nill以及我能想到的一切。没有想到NaN。