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

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

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

ezsurfc

簡単な 3 次元表面/等高線図法

構文

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

説明

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

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

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

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

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

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

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

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

h = ezsurfc(...) は、グラフィックス オブジェクトのハンドルを h に返します。

以下の式の表面/等高線図を作成します。

ここで、範囲は、-5 < x < 5, -2*pi < y < 2*pi で、計算するグリッド数は、35 行 35 列です。

ezsurfc('y/(1 + x^2 + y^2)',[-5,5,-2*pi,2*pi],35)

使用する rotate3d モードにプロットを入れます。マウスを使って Axes を回転させ、等高線を見やすくしてください (この図では、-65.5 度の方位で、高度 26 です)。

詳細

すべて展開する

ヒント

関数 ezsurf および関数 ezsurfc は複素数入力を受け入れません。

関数を文字列として渡す

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

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

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

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

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

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

関数ハンドルを渡す

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

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

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

追加引数を渡す

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

function z = myfun(x,y,k1,k2,k3)
z = x.*(y.^k1)./(x.^k2 + y.^k3);

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

ezsurfc(@(x,y)myfun(x,y,2,2,4))

参考

| | | |

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