Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

fmesh

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

説明

fmesh(f) は、シンボリック式 f(x,y) のメッシュ プロットを xy の既定の区間 [-5 5] で作成します。

fmesh(f,[min max]) は、f(x,y)xy の区間 [min max] でプロットします。

fmesh(f,[xmin xmax ymin ymax]) は、f(x,y)x の区間 [xmin xmax]y の区間 [ymin ymax] でプロットします。関数 fmeshsymvar を使用して、変数を並べ替え、区間を割り当てます。

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

fmesh(funx,funy,funz,[uvmin uvmax]) は、パラメトリック メッシュ x = x(u,v)y = y(u,v)z = z(u,v)uv の区間 [uvmin uvmax] でプロットします。

fmesh(funx,funy,funz,[umin umax vmin vmax]) は、パラメトリック メッシュ x = x(u,v)y = y(u,v)z = z(u,v)u の区間 [umin umax]v の区間 [vmin vmax] でプロットします。関数 fmeshsymvar を使用して、パラメトリック変数を並べ替え、区間を割り当てます。

fmesh(___,LineSpec) は、LineSpec を使用してライン スタイル、マーカー記号、プロットの色を設定します。

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

fmesh(ax,___) は、現在の axes オブジェクト gca ではなくオブジェクト ax をもつ座標軸にプロットします。

obj = fmesh(___) は、関数表面オブジェクトまたはパラメーター化された関数表面オブジェクトを返します。このオブジェクトを使用して、特定のメッシュのプロパティのクエリと変更を行います。

すべて折りたたむ

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

syms x y
fmesh(sin(x)+cos(y))

既定の区間 -5<x<5 および -5<y<5tan-1(x+iy) の実数部の 3 次元メッシュをプロットします。

syms f(x,y)
f(x,y) = real(atan(x + i*y));
fmesh(f)

プロット区間を fmesh の 2 番目の引数に与えることで、sin(x)+cos(y) を区間 -π<x<π-5<y<5 にプロットします。

syms x y
f = sin(x) + cos(y);
fmesh(f, [-pi pi -5 5])

次のパラメーター化されたメッシュのプロットを

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

0<s<2π0<t<π で行います。axis equal を使用して、座標軸の縦横比を同じにします。alpha を使用して、メッシュを部分的に透明にしてメッシュ全体を表示します。

syms s t
r = 8 + sin(7*s + 5*t);
x = r*cos(s)*sin(t);
y = r*sin(s)*sin(t);
z = r*cos(t);
fmesh(x, y, z, [0 2*pi 0 pi], 'Linewidth', 2)
axis equal
alpha(0.8)

入力引数

すべて折りたたむ

プロットする式または関数。シンボリック式またはシンボリック関数として指定します。

x 軸と y 軸のプロット区間。2 つの数値のベクトルとして指定します。既定値は [-5 5] です。

x 軸と y 軸のプロット区間。4 つの数値のベクトルとして指定します。既定値は [-5 5 -5 5] です。

uv のパラメトリック関数。シンボリック式またはシンボリック関数として指定します。

u 軸と v 軸のプロット区間。2 つの数値のベクトルとして指定します。既定値は [-5 5] です。

uv のプロット区間。4 つの数値のベクトルとして指定します。既定値は [-5 5 -5 5] です。

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 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'

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

例: 100

プロットの下に等高線図を表示。'on' または 'off' として指定するか、数値または 1 (true) か 0 (false) の logical 値として指定します。値 '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 進数のカラー コードは、string スカラー、またはハッシュ記号 (#) の後に 3 つまたは 6 つの 0 から F までの範囲の 16 進数の桁を続けた文字ベクトルです。この値では大文字と小文字は区別されません。そのため、カラー コード "#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 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 進数のカラー コードは、string スカラー、またはハッシュ記号 (#) の後に 3 つまたは 6 つの 0 から F までの範囲の 16 進数の桁を続けた文字ベクトルです。この値では大文字と小文字は区別されません。そのため、カラー コード "#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 進数のカラー コードは、string スカラー、またはハッシュ記号 (#) の後に 3 つまたは 6 つの 0 から F までの範囲の 16 進数の桁を続けた文字ベクトルです。この値では大文字と小文字は区別されません。そのため、カラー コード "#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 のプロパティ を参照してください。

ヒント

  • fmeshfsurf は同じ構文を使用するため、その他の例については fsurf のページに従ってください。fsurf のページのすべての例は fmesh にあてはまります。

アルゴリズム

fmeshf のシンボリック変数を x 軸に、次に y 軸に割り当て、symvar は割り当てられる変数の順番を決定します。そのため、変数名と軸名が対応しない場合があります。fmeshx または y を対応する軸に割り当てるように強制するには、プロットするシンボリック関数を作成し、そのシンボリック関数を fmesh に渡します。

たとえば、次のコードは f(x,y) = sin(y) のメッシュを 2 つの方法でプロットします。1 つ目の方法では、y 軸に対して波形を振動させます。つまり、1 つ目のプロットでは変数 y を対応する y 軸に割り当てます。2 つ目のプロットでは、yx 軸に割り当てます。これがシンボリック関数内で最初の (および唯一の) 変数であるためです。

syms x y;
f(x,y) = sin(y);

figure;
subplot(2,1,1)
fmesh(f);
subplot(2,1,2)
fmesh(f(x,y)); % Or fmesh(sin(y));
Two mesh plots showing f(x,y) = sin(y), one plot with respect to the y-axis and the other plot with respect to the x-axis

バージョン履歴

R2016a で導入