2

surf コマンドを使用してプロットしたい行列 Z があります。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() を使用する必要はありません。

4

1 に答える 1

6

グラフにしたくない Z のすべての値を NaN に設定します。たとえば、Z のゼロをグラフにしたくない場合は、

Z(Z==0)=NaN;

トリックを行います。X と Y でこれを行う必要はありません。グラフにしたくない Z のセットがより複雑な場合は、どうにかして Z(i,j) を取得し、それらを NaN に設定する必要があります。

于 2012-10-11T00:17:25.950 に答える