ドキュメンテーション

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

ezcontour

(非推奨) 簡単な等高線図

ezcontour は推奨されません。代わりに fcontour を使用してください。

構文

ezcontour(fun)
ezcontour(fun,domain)
ezcontour(...,n)
ezcontour(axes_handle,...)
h = ezcontour(...)

説明

ezcontour(fun) は、関数 contour を使用して、fun(x,y) の等高線をプロットします。fun は、既定の領域 -2π < x < 2π、-2π < y < 2π でプロットされます。

関数 fun は、MATLAB® ファイル関数または無名関数の関数ハンドル (関数ハンドルの作成および無名関数を参照)、文字ベクトル、または string (ヒントを参照) のいずれかにすることができます。

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

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

ezcontour(axes_handle,...) は、現在の座標軸 (gca) の代わりにハンドル axes_handle をもつ座標軸にプロットします。

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

関数 ezcontour は、タイトルと Axes のラベルを自動的に付加します。

すべて折りたたむ

この数式は x と y の 2 つの変数の関数を定義します。

f(x,y)=3(1-x)2e-x2-(y+1)2-10(x5-x3-y5)e-x2-y2-13e-(x+1)2-y2

関数 ezcontour には関数ハンドル引数が必要です。この数式を、ハンドル f をもつ無名関数として MATLAB® 構文で記述します。別のファイルを作成せずにコマンド ウィンドウで無名関数を定義できます。便宜上、この関数は 3 行で記述します。

f = @(x,y) 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ...
   - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...
   - 1/3*exp(-(x+1).^2 - y.^2);

関数ハンドル fezcontour に渡します。x 方向および y 方向の -3 から 3 の領域を指定し、49 行 49 列の計算グリッドを使用します。

ezcontour(f,[-3,3],49)

この場合、タイトルが長すぎてグラフの最上部に収まらないため、MATLAB® によってタイトルが省略されます。

ヒント

関数を文字ベクトルまたは string として渡す

関数 ezcontour に渡す式には、常に配列の乗算、除算およびべき乗が暗黙的に指定されています。たとえば、以下の式の等高線図の MATLAB 構文は、

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

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

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

つまり、ezcontour に渡す文字ベクトルまたは string 内の x^2x.^2 として解釈されます。

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

関数ハンドルを渡す

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

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

関数ハンドルを使用する場合は、配列べき乗、配列乗算および配列除算の各演算子 (.^, .*, ./) を使用しなければなりません。これは、文字ベクトルまたは string の入力の場合とは異なり、ezcontour が構文を変更しないためです。

追加引数を渡す

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

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

無名関数を使用して、パラメーターを指定します。

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

拡張機能

R2006a より前に導入