ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ezmesh

簡単な 3 次元メッシュ プロット法

構文

ezmesh(fun)
ezmesh(fun,domain)
ezmesh(funx,funy,funz)
ezmesh(funx,funy,funz,[smin,smax,tmin,tmax])
ezmesh(funx,funy,funz,[min,max])
ezmesh(...,n)
ezmesh(...,'circ')
ezmesh(axes_handle,...)
h = ezmesh(...)

説明

ezmesh(fun) は、関数 mesh を使用して、fun(x,y) のグラフを作成します。fun は、既定の領域でプロットされます。-2π < x < 2π, -2π < y < 2π です。

fun には、関数ハンドルまたは文字列を指定できます (「ヒント」の節を参照)。

ezmesh(fun,domain) は、指定された領域 domain で関数 fun をプロットします。domain は、4 行 1 列のベクトル [xmin, xmax, ymin, ymax] または 2 行 1 列のベクトル [min, max] のいずれかです (ここで、min < x < maxmin < y < max です)。

ezmesh(funx,funy,funz) は、正方で、パラメトリックな表面 funx(s,t)funy(s,t) および unz(s,t) をプロットします。-2π < s < 2π, -2π < t < 2π です。

関数 ezmesh(funx,funy,funz,[smin,smax,tmin,tmax]) または ezmesh(funx,funy,funz,[min,max]) は、指定された領域を使用してパラメトリックな表面をプロットします。

ezmesh(...,n) は、nn 列のグリッドを使用して、既定の領域で、関数 fun をプロットします。n の既定値は 60 です。

ezmesh(...,'circ') は、領域内の中心に関数 fun を円盤上にプロットします。

ezmesh(axes_handle,...) は、現在の Axes (関数 gca) の代わりにハンドル axes_handle をもつ Axes にプロットします。

h = ezmesh(...) は、表面オブジェクトのハンドルを h に返します。

この例は、以下の関数を可視化するものです。

ここで、メッシュ プロットは、40 行 40 列のグリッド上で表示されます。メッシュ ラインは、カラーマップを単色で設定することにより、青色で表示されます。

fh = @(x,y) x.*exp(-x.^2-y.^2);
ezmesh(fh,40)
colormap([0 0 1])

詳細

すべて展開する

ヒント

関数を文字列として渡す

配列の乗算、除算、および指数の計算が、関数 ezmesh に転送される式の中で、常に行われています。たとえば、メッシュ プロットに対する MATLAB® 構文は、

sqrt(x.^2 + y.^2);

以下のように記述されます。

ezmesh('sqrt(x^2 + y^2)')

これは、x^2 が、関数 ezmesh に渡す文字列の x^2 として解釈されます。

プロットする関数が、変数 u および v (x および y ではありません) の関数の場合、領域の端点 uminumaxvmin、および vmax は、アルファベット順に並べ替えされます。そのため、ezmesh('u^2 - v^3',[0,1],[3,6]) は、領域 0 < u < 1、3 < v < 6 で、u2 - v3 をプロットします。

関数ハンドルを渡す

関数ハンドル引数は、MATLAB 構文を使用する関数を示さなければなりません。たとえば、以下のステートメントは、無名関数を示し、関数ハンドル fh を関数 ezmesh に渡します。

fh = @(x,y) sqrt(x.^2 + y.^2);
ezmesh(fh)

関数ハンドルを使用する場合、関数 ezmesh は、文字列入力と同様に、構文を変更しないので、配列べき乗、配列乗算、および配列除算演算子 (.^, .*, ./) を使用しなければなりません。

追加引数を渡す

関数で、たとえば、myfunk などの追加パラメーターが使用される場合、

function z = myfun(x,y,k)
z = x.^k - y.^k - 1;

無名関数を使用して、パラメーターを指定することができます。

ezmesh(@(x,y)myfun(x,y,2))

参考

| |

この情報は役に立ちましたか?