Main Content

fmesh

3 次元メッシュをプロット

  • Plot 3-D mesh

説明

fmesh(f) は、x および y の既定の区間 [-5 5] に、式 z = f(x,y) のメッシュ プロットを作成します。

fmesh(f,xyinterval) は、指定された区間にプロットします。xy の両方で同じ区間を使用するには、[min max] の形式をもつ 2 要素ベクトルとして xyinterval を指定します。異なる区間を使用するには、[xmin xmax ymin ymax] の形式をもつ 4 要素ベクトルを指定します。

fmesh(funx,funy,funz) は、uv の既定の区間 [-5 5] に、x = funx(u,v)y = funy(u,v)z = funz(u,v) で定義されるパラメトリック メッシュをプロットします。

fmesh(funx,funy,funz,uvinterval) は、指定された区間にパラメトリック メッシュをプロットします。uv の両方で同じ区間を使用するには、[min max] の形式をもつ 2 要素ベクトルとして uvinterval を指定します。異なる区間を使用するには、[umin umax vmin vmax] の形式をもつ 4 要素ベクトルを指定します。

fmesh(___,LineSpec) は、メッシュのライン スタイル、マーカー記号および色を設定します。たとえば、'-r' は赤のラインを指定します。このオプションは、前述した任意の入力引数の組み合わせの後に使用します。

fmesh(___,Name,Value) は 1 つ以上の名前と値のペアの引数を使用して、メッシュのプロパティを指定します。このオプションは、前述の構文のすべての入力引数の組み合わせで使用できます。

fmesh(ax,___) は、現在の座標軸 gca ではなく、ax で指定される座標軸にプロットします。

fs = fmesh(___) は、入力に応じて FunctionSurface オブジェクトまたは ParameterizedFunctionSurface オブジェクトを返します。特定の表面のプロパティについてクエリや変更を行うには、fs を使用します。プロパティの一覧については、FunctionSurface のプロパティ または ParameterizedFunctionSurface のプロパティ を参照してください。

すべて折りたたむ

既定の区間 -5<x<5 および -5<y<5 に入力 sin(x)+cos(y) のメッシュをプロットします。

fmesh(@(x,y) sin(x)+cos(y))

Figure contains an axes object. The axes object contains an object of type functionsurface.

次式のようにパラメーター化されたメッシュをプロットします。

x=rcos(s)sin(t)y=rsin(s)sin(t)z=rcos(t)wherer=2+sin(7s+5t)

0<s<2π かつ 0<t<π についてテストします。alpha を使用して、メッシュの一部を透明にします。

r = @(s,t) 2 + sin(7.*s + 5.*t);
x = @(s,t) r(s,t).*cos(s).*sin(t);
y = @(s,t) r(s,t).*sin(s).*sin(t);
z = @(s,t) r(s,t).*cos(t);
fmesh(x,y,z,[0 2*pi 0 pi])
alpha(0.8)

Figure contains an axes object. The axes object contains an object of type parameterizedfunctionsurface.

区分的な入力

erf(x)+cos(y)-5<x<0sin(x)+cos(y)0<x<5

を区間 -5<y<5. にプロットします。

プロット区間を fmesh の 2 番目の引数として指定します。同じ座標軸の異なる区間に複数の入力をプロットする場合、すべてのデータが含まれるように軸の範囲が調整されます。

fmesh(@(x,y) erf(x)+cos(y),[-5 0 -5 5])
hold on
fmesh(@(x,y) sin(x)+cos(y),[0 5 -5 5])
hold off

Figure contains an axes object. The axes object contains 2 objects of type functionsurface.

赤のラインを使用してメッシュ プロットを作成します。

fmesh(@(x,y) sin(x)+cos(y),'EdgeColor','red')

Figure contains an axes object. The axes object contains an object of type functionsurface.

入力引数

すべて折りたたむ

プロット対象の 3 次元関数。名前付き関数または無名関数の関数ハンドルとして指定します。

z = f(x,y) の形式の関数を指定します。関数は 2 つの行列の入力引数を受け入れ、同じサイズの行列の出力引数を 1 つ返さなければなりません。最高のパフォーマンスを得るには、行列演算子ではなく、配列演算子を使用します。たとえば、* (mtimes) ではなく .* (times) を使用します。

例: f = @(x,y) sin(x) + cos(y);

x および y のプロット区間。次のいずれかの形式で指定します。

  • [min max] 形式のベクトル — x および y の両方に区間 [min max] を使用します。

  • [xmin xmax ymin ymax] 形式のベクトル — x に区間 [xmin xmax]y に区間 [ymin ymax] を使用します。

x 座標のパラメトリック関数。名前付き関数または無名関数の関数ハンドルとして指定します。

x = funx(u,v) の形式の関数を指定します。関数は 2 つの行列の入力引数を受け入れ、同じサイズの行列の出力引数を 1 つ返さなければなりません。最高のパフォーマンスを得るには、行列演算子ではなく、配列演算子を使用します。たとえば、* (mtimes) ではなく .* (times) を使用します。

例: funx = @(u,v) u.*sin(v);

y 座標のパラメトリック関数。名前付き関数または無名関数の関数ハンドルとして指定します。

y = funy(u,v) の形式の関数を指定します。関数は 2 つの行列の入力引数を受け入れ、同じサイズの行列の出力引数を 1 つ返さなければなりません。最高のパフォーマンスを得るには、行列演算子ではなく、配列演算子を使用します。たとえば、* (mtimes) ではなく .* (times) を使用します。

例: funy = @(t) @(u,v) -u.*cos(v);

z 座標のパラメトリック関数。名前付き関数または無名関数の関数ハンドルとして指定します。

z = funz(u,v) の形式の関数を指定します。関数は 2 つの行列の入力引数を受け入れ、同じサイズの行列の出力引数を 1 つ返さなければなりません。最高のパフォーマンスを得るには、行列演算子ではなく、配列演算子を使用します。たとえば、* (mtimes) ではなく .* (times) を使用します。

例: funz = @(u,v) v;

u および v のプロット区間。次のいずれかの形式で指定します。

  • [min max] 形式のベクトル — u および v の両方に区間 [min max] を使用します。

  • [umin umax vmin vmax] 形式のベクトル — u に区間 [umin umax]v に区間 [vmin vmax] を使用します。

axes オブジェクト。axes オブジェクトを指定しない場合、fmesh は現在の座標軸を使用します。

ライン スタイル、マーカーおよび色。記号を含む string または文字ベクトルとして指定します。記号の順番は任意です。3 つの特性 (ライン スタイル、マーカーおよび色) をすべて指定する必要はありません。たとえば、ライン スタイルを省略してマーカーを指定する場合、プロットはラインなしでマーカーのみを表示します。

例: "--or" は円形マーカー付きの赤い破線

ライン スタイル説明結果として得られる線
"-"実線

Sample of solid line

"--"破線

Sample of dashed line

":"点線

Sample of dotted line

"-."一点鎖線

Sample of dash-dotted line, with alternating dashes and dots

マーカー説明結果のマーカー
"o"

Sample of circle marker

"+"プラス記号

Sample of plus sign marker

"*"アスタリスク

Sample of asterisk marker

"."

Sample of point marker

"x"十字

Sample of cross marker

"_"水平線

Sample of horizontal line marker

"|"垂直線

Sample of vertical line marker

"square"正方形

Sample of square marker

"diamond"菱形

Sample of diamond line marker

"^"上向き三角形

Sample of upward-pointing triangle marker

"v"下向き三角形

Sample of downward-pointing triangle marker

">"右向き三角形

Sample of right-pointing triangle marker

"<"左向き三角形

Sample of left-pointing triangle marker

"pentagram"星形五角形

Sample of pentagram marker

"hexagram"星形六角形

Sample of hexagram marker

色名省略名RGB 3 成分外観
"red""r"[1 0 0]

Sample of the color red

"green""g"[0 1 0]

Sample of the color green

"blue""b"[0 0 1]

Sample of the color blue

"cyan" "c"[0 1 1]

Sample of the color cyan

"magenta""m"[1 0 1]

Sample of the color magenta

"yellow""y"[1 1 0]

Sample of the color yellow

"black""k"[0 0 0]

Sample of the color black

"white""w"[1 1 1]

Sample of the color white

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: 'Marker','o','MarkerFaceColor','red'

ここでは、プロパティの一部だけを紹介しています。完全な一覧については、FunctionSurface のプロパティ を参照してください。

方向ごとの評価点の数。数値として指定します。既定値は 35 です。fmesh オブジェクトでは適応評価を使用するため、評価点の実際の数はそれより多くなります。

例: 100

プロットの下への等高線図の表示。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off'false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。

ラインの色。'interp'、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。既定値 'interp' では、ZData プロパティ値に基づいてエッジに着色します。

カスタム色を使用する場合は、RGB 3 成分または 16 進数カラー コードを指定します。

  • RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。

  • 16 進数カラー コードは、ハッシュ記号 (#) で始まり、3 桁または 6 桁の 0 から F までの範囲の 16 進数が続く文字ベクトルまたは string スカラーです。これらの値では大文字小文字は区別されません。したがって、カラー コード "#FF8800""#ff8800""#F80"、および "#f80" は等価です。

あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。

色名省略名RGB 3 成分16 進数カラー コード外観
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"該当なし該当なし該当なし色なし

MATLAB® の多くのタイプのプロットで使用されている既定の色の RGB 3 成分および 16 進数カラー コードを次に示します。

RGB 3 成分16 進数カラー コード外観
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

例: 'blue'

例: [0 0 1]

例: '#0000FF'

ライン スタイル。次の表にリストされたオプションのいずれかとして指定します。

ライン スタイル説明結果として得られる線
"-"実線

Sample of solid line

"--"破線

Sample of dashed line

":"点線

Sample of dotted line

"-."一点鎖線

Sample of dash-dotted line, with alternating dashes and dots

"none"ラインなしラインなし

ライン幅。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。ラインがマーカーをもつ場合、ライン幅はマーカー エッジにも影響します。

ライン幅をピクセルの幅より細くすることはできません。システムでライン幅をピクセルの幅より細い値に設定すると、ラインは 1 ピクセル幅で表示されます。

マーカー記号。次の表に挙げる値のいずれかとして指定します。既定では、オブジェクトはマーカーを表示しません。マーカー記号を指定すると、各データ点または各頂点にマーカーが追加されます。

マーカー説明結果のマーカー
"o"

Sample of circle marker

"+"プラス記号

Sample of plus sign marker

"*"アスタリスク

Sample of asterisk marker

"."

Sample of point marker

"x"十字

Sample of cross marker

"_"水平線

Sample of horizontal line marker

"|"垂直線

Sample of vertical line marker

"square"正方形

Sample of square marker

"diamond"菱形

Sample of diamond line marker

"^"上向き三角形

Sample of upward-pointing triangle marker

"v"下向き三角形

Sample of downward-pointing triangle marker

">"右向き三角形

Sample of right-pointing triangle marker

"<"左向き三角形

Sample of left-pointing triangle marker

"pentagram"星形五角形

Sample of pentagram marker

"hexagram"星形六角形

Sample of hexagram marker

"none"マーカーなし該当なし

マーカーの輪郭の色。'auto'、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。既定値の 'auto' は、EdgeColor プロパティと同じ色を使用します。

カスタム色を使用する場合は、RGB 3 成分または 16 進数カラー コードを指定します。

  • RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。

  • 16 進数カラー コードは、ハッシュ記号 (#) で始まり、3 桁または 6 桁の 0 から F までの範囲の 16 進数が続く文字ベクトルまたは string スカラーです。これらの値では大文字小文字は区別されません。したがって、カラー コード "#FF8800""#ff8800""#F80"、および "#f80" は等価です。

あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。

色名省略名RGB 3 成分16 進数カラー コード外観
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"該当なし該当なし該当なし色なし

MATLAB の多くのタイプのプロットで使用されている既定の色の RGB 3 成分および 16 進数カラー コードを次に示します。

RGB 3 成分16 進数カラー コード外観
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

例: [0.5 0.5 0.5]

例: 'blue'

例: '#D2F9A7'

マーカーの塗りつぶし色。'auto'、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。'auto' 値を指定すると、MarkerEdgeColor プロパティと同じ色が使用されます。

カスタム色を使用する場合は、RGB 3 成分または 16 進数カラー コードを指定します。

  • RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。

  • 16 進数カラー コードは、ハッシュ記号 (#) で始まり、3 桁または 6 桁の 0 から F までの範囲の 16 進数が続く文字ベクトルまたは string スカラーです。これらの値では大文字小文字は区別されません。したがって、カラー コード "#FF8800""#ff8800""#F80"、および "#f80" は等価です。

あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。

色名省略名RGB 3 成分16 進数カラー コード外観
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"該当なし該当なし該当なし色なし

MATLAB の多くのタイプのプロットで使用されている既定の色の RGB 3 成分および 16 進数カラー コードを次に示します。

RGB 3 成分16 進数カラー コード外観
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

例: [0.3 0.2 0.1]

例: 'green'

例: '#D2F9A7'

マーカー サイズ。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。

出力引数

すべて折りたたむ

1 つ以上の FunctionSurface オブジェクトまたは ParameterizedFunctionSurface オブジェクト。スカラーまたはベクトルとして返されます。

  • fmesh(f) の構文、あるいはこの構文の変形を使用した場合、fmeshFunctionSurface オブジェクトを返します。

  • fmesh(funx,funy,funz) の構文、あるいはこの構文の変形を使用した場合、fmeshParameterizedFunctionSurface オブジェクトを返します。

これらのオブジェクトは、特定メッシュのプロパティのクエリと変更に使用できます。プロパティの一覧については、FunctionSurface のプロパティ および ParameterizedFunctionSurface のプロパティ を参照してください。

バージョン履歴

R2016a で導入