fsurf
3 次元表面のプロット
構文
説明
fsurf( は、f,[xmin xmax ymin ymax])f(x,y) を x の区間 [xmin xmax] と y の区間 [ymin ymax] でプロットします。関数 fsurf は symvar を使用して、変数を並べ替え、区間を割り当てます。
fsurf( は、パラメトリックな表面 funx,funy,funz)x = x(u,v)、y = y(u,v)、z = z(u,v) を、u と v の区間 [-5 5] でプロットします。
fsurf( は、パラメトリックな表面 funx,funy,funz,[uvmin uvmax])x = x(u,v)、y = y(u,v)、z = z(u,v) を、u と v の区間 [uvmin uvmax] でプロットします。
fsurf( は、パラメトリックな表面 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] でプロットします。関数 fsurf は symvar を使用して、パラメトリック変数を並べ替え、区間を割り当てます。
fsurf(___, は、1 つ以上の Name,Value)Name,Value 引数ペアを使用して、ラインのプロパティを指定します。このオプションは、前述の構文のすべての入力引数の組み合わせの後で使用できます。
fsurf( は、現在の axes オブジェクト ax,___)gca ではなくオブジェクト ax をもつ座標軸にプロットします。
は、表面のタイプによって、関数表面オブジェクトまたはパラメーター化された関数表面オブジェクトを返します。このオブジェクトを使用して、特定の表面のプロパティのクエリと変更を行います。詳細については、FunctionSurface のプロパティ および ParameterizedFunctionSurface のプロパティ を参照してください。fs = fsurf(___)
例
プロット区間を fsurf の 2 番目の引数に与えることで、 を区間 と にプロットします。
syms x y f = sin(x) + cos(y); fsurf(f, [-pi pi -5 5])

次のパラメーター化された表面のプロットを
と で行います。
camlight を使用してプロットの外観を改善します。
syms s t r = 2 + sin(7*s + 5*t); x = r*cos(s)*sin(t); y = r*sin(s)*sin(t); z = r*cos(t); fsurf(x, y, z, [0 2*pi 0 pi]) camlight view(46,52)

クラインの壺の区分的式のプロット
と で行います。
クラインの壺には片側の表面しかないことを示します。
syms u v; r = @(u) 4 - 2*cos(u); x = piecewise(u <= pi, -4*cos(u)*(1+sin(u)) - r(u)*cos(u)*cos(v),... u > pi, -4*cos(u)*(1+sin(u)) + r(u)*cos(v)); y = r(u)*sin(v); z = piecewise(u <= pi, -14*sin(u) - r(u)*sin(u)*cos(v),... u > pi, -14*sin(u)); h = fsurf(x,y,z, [0 2*pi 0 2*pi]);

と について から まで、3 次元表面 をプロットします。タイトルと座標軸ラベルを追加します。
x 軸の範囲を pi/2 の間隔にして、x 軸の目盛りを作成します。round を使用して座標軸の範囲を pi/2 の倍数に正確に変換し、S の目盛りのシンボリックな値を取得します。XTick プロパティを使用して、これらの目盛りを表示します。arrayfun を使用して texlabel を S に適用して、x 軸ラベルを作成します。XTickLabel プロパティを使用して、これらのラベルを表示します。以上の手順を、y 軸について繰り返します。
プロットに LaTeX を使用する方法については、latexを参照してください。
syms x y fsurf(y.*sin(x)-x.*cos(y), [-2*pi 2*pi]) title('ysin(x) - xcos(y) for x and y in [-2\pi,2\pi]') xlabel('x') ylabel('y') zlabel('z') ax = gca; S = sym(ax.XLim(1):pi/2:ax.XLim(2)); S = sym(round(vpa(S/pi*2))*pi/2); ax.XTick = double(S); ax.XTickLabel = arrayfun(@texlabel,S,'UniformOutput',false); S = sym(ax.YLim(1):pi/2:ax.YLim(2)); S = sym(round(vpa(S/pi*2))*pi/2); ax.YTick = double(S); ax.YTickLabel = arrayfun(@texlabel,S,'UniformOutput',false);
![Figure contains an axes object. The axes object with title ysin(x) blank - blank xcos(y) blank for blank x blank and blank y blank in blank [- 2 pi , 2 pi ], xlabel x, ylabel y contains an object of type functionsurface.](../examples/symbolic/win64/AddTitleAndAxisLabelsAndFormatTicksExample_01.png)
の異なる値に対し異なるライン スタイルを使用して、パラメトリックな表面 、、 をプロットします。 に対しては、緑のドット マーカー付きの破線を使用します。 に対しては、LineWidth に 1 を、面の色に緑を使用します。 について、EdgeColor を none に設定してラインを非表示にします。
syms s t fsurf(s*sin(t),-s*cos(t),t,[-5 5 -5 -2],'--.','MarkerEdgeColor','g') hold on fsurf(s*sin(t),-s*cos(t),t,[-5 5 -2 2],'LineWidth',1,'FaceColor','g') fsurf(s*sin(t),-s*cos(t),t,[-5 5 2 5],'EdgeColor','none')

パラメトリックな表面をプロットします
fcontour がプロット オブジェクトを返すように出力を指定します。
syms u v x = exp(-abs(u)/10).*sin(5*abs(v)); y = exp(-abs(u)/10).*cos(5*abs(v)); z = u; fs = fsurf(x,y,z)

fs =
ParameterizedFunctionSurface with properties:
XFunction: exp(-abs(u)/10)*sin(5*abs(v))
YFunction: exp(-abs(u)/10)*cos(5*abs(v))
ZFunction: u
EdgeColor: [0 0 0]
LineStyle: '-'
FaceColor: 'interp'
Show all properties
fs の URange プロパティを使用して u の範囲を [-30 30] に変更します。EdgeColor プロパティを使用してラインの色を青に設定し、Marker プロパティと MarkerEdgeColor プロパティを使用して白色のドット マーカーを指定します。
fs.URange = [-30 30]; fs.EdgeColor = 'b'; fs.Marker = '.'; fs.MarkerEdgeColor = 'w';

fsurf へのベクトル入力を使用して複数の表面をプロットします。または、hold on を使用して、連続して同じ Figure にプロットします。同じ Figure に複数の表面を表示する場合、透明度が有用です。FaceAlpha プロパティを使用して表面プロットの透明度を調整します。FaceAlpha は、0 から 1 の値を取ります。0 は完全な透明で、1 は不透明です。
fsurf へのベクトル入力を使用して平面 および をプロットします。FaceAlpha を使用して平面を半透明にし、両方の平面を表示します。
syms x y h = fsurf([x+y x-y]); h(1).FaceAlpha = 0.5; h(2).FaceAlpha = 0.5; title('Planes (x+y) and (x-y) at half transparency')

'MeshDensity' オプションを使用して、表面プロットの解像度を制御します。'MeshDensity' を増やすとプロットがより滑らかで正確になり、減らすとプロット速度が上がります。
subplot を使用して、Figure を 2 つに分割します。最初のサブプロットでは、パラメトリックな表面 、、および をプロットします。表面には大きなギャップがあります。第 2 サブプロットで 'MeshDensity' を 40 に増やしてこの問題を修正します。fsurf によってギャップが埋められます。これは、'MeshDensity' を増やすとプロットの解像度が向上することを示します。
syms s t subplot(2,1,1) fsurf(sin(s), cos(s), t/10.*sin(1./s)) view(-172,25) title('Default MeshDensity = 35') subplot(2,1,2) fsurf(sin(s), cos(s), t/10.*sin(1./s),'MeshDensity',40) view(-172,25) title('Increased MeshDensity = 40')

'ShowContours' オプションを 'on' に設定して、式 f の表面プロットに対して等高線を表示します。
syms x y f = 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); fsurf(f,[-3 3],'ShowContours','on')

表面プロットのアニメーションを作成するには、表示されている式を Function、XFunction、YFunction、および ZFunction のプロパティを使用して変更した後、drawnow を使用してプロットを更新します。GIF にエクスポートする方法については、imwrite を参照してください。
変数
を 1 から 3 まで変えることによって、パラメトリックな表面をアニメーション化します。



と
で行います。MeshDensity を 9 に減らしてプロット速度を上げます。
syms s t h = fsurf(t.*sin(s), cos(s), sin(1./s), [-0.1 0.1 0 1]); h.MeshDensity = 9; for i=1:0.1:3 h.ZFunction = sin(i./s); drawnow end

関数のシンボリック式 f を作成します。
f 式を表面としてプロットします。fsurf によって返されるハンドルのプロパティ、ライティング プロパティおよび colormap を使用して、表面プロットの外観を改善します。
camlight を使用してライトを作成します。brighten を使用して輝度を上げます。EdgeColor を 'none' に設定してラインを削除します。AmbientStrength を使用して周囲光の強度を高めます。詳細については、ライティング、透明度、およびシェーディングを参照してください。座標軸のボックスをオンにします。タイトルについては、latex を使用して f を LaTeX に変換します。最後に、座標軸の目盛り、座標軸のラベルおよびタイトルの外観を改善するために、'Interpreter' を 'latex' に設定します。
syms x y f = 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); h = fsurf(f,[-3 3]); camlight(110,70) brighten(0.6) h.EdgeColor = 'none'; h.AmbientStrength = 0.4; a = gca; a.TickLabelInterpreter = 'latex'; a.Box = 'on'; a.BoxStyle = 'full'; xlabel('$x$','Interpreter','latex') ylabel('$y$','Interpreter','latex') zlabel('$z$','Interpreter','latex') title_latex = ['$' latex(f) '$']; title(title_latex,'Interpreter','latex')

平面で下を、 平面で上を区切られた円筒シェルをプロットします。
syms r t u fsurf(cos(t),sin(t),u*(cos(t)+2),[0 2*pi 0 1]) hold on;
平面 の表面プロットを追加します。
fsurf(r*cos(t),r*sin(t),r*cos(t)+2,[0 1 0 2*pi])

トーラスの表面プロットに回転と平行移動を適用します。
トーラスはパラメトリックに次のように定義できます。
ここで、
は極角、 は方位角です。
はチューブの半径です。
はチューブの中心からトーラスの中心までの距離です。
および の値をそれぞれ 1 および 5 に定義します。fsurf を使用してトーラスをプロットします。
syms theta phi a = 1; R = 4; x = (R + a*cos(theta))*cos(phi); y = (R + a*cos(theta))*sin(phi); z = a*sin(theta); fsurf(x,y,z,[0 2*pi 0 2*pi]) hold on
トーラスに 軸周りの回転を適用します。回転行列を定義します。トーラスを 90 度または ラジアンの角度で回転します。
alpha = pi/2;
Rx = [1 0 0;
0 cos(alpha) -sin(alpha);
0 sin(alpha) cos(alpha)];
r = [x; y; z];
r_90 = Rx*r;トーラスの中心を、 軸に沿って 5 シフトします。既存のグラフに、回転し平行移動したトーラスの 2 番目のプロットを追加します。
fsurf(r_90(1)+5,r_90(2),r_90(3))
axis([-5 10 -5 10 -5 5])
hold off
入力引数
プロットする式または関数。シンボリック式またはシンボリック関数として指定します。
x 軸と y 軸のプロット区間。2 つの数値のベクトルとして指定します。既定値は [-5 5] です。
x 軸と y 軸のプロット区間。4 つの数値のベクトルとして指定します。既定値は [-5 5 -5 5] です。
u と v のパラメトリック関数。シンボリック式またはシンボリック関数として指定します。
u 軸と v 軸のプロット区間。2 つの数値のベクトルとして指定します。既定値は [-5 5] です。
u と v のプロット区間。4 つの数値のベクトルとして指定します。既定値は [-5 5 -5 5] です。
axes オブジェクト。axes オブジェクトを指定しない場合、fsurf は現在の座標軸を使用します。
ライン スタイル、マーカー、色。記号を含む string スカラーまたは文字ベクトルとして指定します。記号の順序は任意です。3 つの特性すべて (ライン スタイル、マーカー、色) を指定する必要はありません。たとえば、ライン スタイルを省略してマーカーを指定すると、プロットにはマーカーのみが表示され、ラインは表示されません。
例: "--or" は円マーカーをもつ赤い破線です。
| ライン スタイル | 説明 | 結果として得られるライン |
|---|---|---|
"-" | 実線 |
|
"--" | 破線 |
|
":" | 点線 |
|
"-." | 一点鎖線 |
|
| マーカー | 説明 | 結果として得られるマーカー |
|---|---|---|
"o" | 円 |
|
"+" | プラス記号 |
|
"*" | アスタリスク |
|
"." | 点 |
|
"x" | 十字 |
|
"_" | 横線 |
|
"|" | 縦線 |
|
"square" | 正方形 |
|
"diamond" | 菱形 |
|
"^" | 上向き三角形 |
|
"v" | 下向き三角形 |
|
">" | 右向き三角形 |
|
"<" | 左向き三角形 |
|
"pentagram" | 星形五角形 |
|
"hexagram" | 星形六角形 |
|
| 色の名前 | 省略名 | RGB 3 成分 | 外観 |
|---|---|---|---|
"red" | "r" | [1 0 0] |
|
"green" | "g" | [0 1 0] |
|
"blue" | "b" | [0 0 1] |
|
"cyan" | "c" | [0 1 1] |
|
"magenta" | "m" | [1 0 1] |
|
"yellow" | "y" | [1 1 0] |
|
"black" | "k" | [0 0 0] |
|
"white" | "w" | [1 1 1] |
|
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して名前と値の各ペアを区切り、Name を引用符で囲みます。
例: 'Marker','o','MarkerFaceColor','red'
ここでは、プロパティの一部だけを紹介しています。一覧については、FunctionSurface のプロパティ を参照してください。
方向ごとの評価点の数。数値として指定します。既定値は 35 です。fsurf オブジェクトは適応評価を使用するため、評価点の数は実際の数の方が大きくなります。
例: 100
プロットの下に等高線図を表示。'on' または 'off' として指定するか、数値または 1 (true) か 0 (false) の logical 値として指定します。値 'on' は true と等価で、'off' は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は、matlab.lang.OnOffSwitchState 型の on/off logical 値として保存されます。
ラインの色。'interp'、RGB 3 成分、16 進数のカラー コード、色の名前、または省略名として指定します。既定の RGB 3 成分の値 [0 0 0] は、黒に相当します。値 '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" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 適用不可 | 適用不可 | 適用不可 | 色なし |
次の表は、ライト テーマとダーク テーマのプロットに対する既定のカラー パレットの一覧です。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットでこれらの色が既定で使用されます。 |
|
|
|
これらのパレットの RGB 3 成分と 16 進数のカラー コードを取得するには、orderedcolors 関数と rgb2hex 関数を使用します。たとえば、"gem" パレットの RGB 3 成分を取得して 16 進数のカラー コードに変換します。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);R2023b より前: RGB = get(groot,"FactoryAxesColorOrder") を使用して RGB 3 成分を取得します。
R2024a より前: H = compose("#%02X%02X%02X",round(RGB*255)) を使用して 16 進数のカラー コードを取得します。
ライン スタイル。次の表のいずれかのオプションに指定します。
| ライン スタイル | 説明 | 結果として得られるライン |
|---|---|---|
"-" | 実線 |
|
"--" | 破線 |
|
":" | 点線 |
|
"-." | 一点鎖線 |
|
"none" | ラインなし | ラインなし |
ライン幅。ポイント単位の正の値として指定します。1 ポイント = 1/72 インチです。ラインがマーカーをもつ場合、ライン幅はマーカー エッジにも影響します。
ライン幅はピクセルの幅よりも細くすることはできません。ライン幅をシステムのピクセル幅よりも小さい値に設定すると、線は 1 ピクセルの幅で表示されます。
マーカー記号。この表にリストされたいずれかの値として指定します。既定では、オブジェクトにマーカーが表示されません。マーカー記号を指定すると、各データ点または頂点にマーカーが追加されます。
| マーカー | 説明 | 結果として得られるマーカー |
|---|---|---|
"o" | 円 |
|
"+" | プラス記号 |
|
"*" | アスタリスク |
|
"." | 点 |
|
"x" | 十字 |
|
"_" | 横線 |
|
"|" | 縦線 |
|
"square" | 正方形 |
|
"diamond" | 菱形 |
|
"^" | 上向き三角形 |
|
"v" | 下向き三角形 |
|
">" | 右向き三角形 |
|
"<" | 左向き三角形 |
|
"pentagram" | 星形五角形 |
|
"hexagram" | 星形六角形 |
|
"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" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 適用不可 | 適用不可 | 適用不可 | 色なし |
次の表は、ライト テーマとダーク テーマのプロットに対する既定のカラー パレットの一覧です。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットでこれらの色が既定で使用されます。 |
|
|
|
これらのパレットの RGB 3 成分と 16 進数のカラー コードを取得するには、orderedcolors 関数と rgb2hex 関数を使用します。たとえば、"gem" パレットの RGB 3 成分を取得して 16 進数のカラー コードに変換します。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);R2023b より前: RGB = get(groot,"FactoryAxesColorOrder") を使用して RGB 3 成分を取得します。
R2024a より前: H = compose("#%02X%02X%02X",round(RGB*255)) を使用して 16 進数のカラー コードを取得します。
例: [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" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 適用不可 | 適用不可 | 適用不可 | 色なし |
次の表は、ライト テーマとダーク テーマのプロットに対する既定のカラー パレットの一覧です。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットでこれらの色が既定で使用されます。 |
|
|
|
これらのパレットの RGB 3 成分と 16 進数のカラー コードを取得するには、orderedcolors 関数と rgb2hex 関数を使用します。たとえば、"gem" パレットの RGB 3 成分を取得して 16 進数のカラー コードに変換します。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);R2023b より前: RGB = get(groot,"FactoryAxesColorOrder") を使用して RGB 3 成分を取得します。
R2024a より前: H = compose("#%02X%02X%02X",round(RGB*255)) を使用して 16 進数のカラー コードを取得します。
例: [0.3 0.2 0.1]
例: "green"
例: "#D2F9A7"
マーカー サイズ。ポイント単位の正の値として指定します。1 ポイント = 1/72 インチです。
出力引数
1 つ以上のオブジェクト。スカラーまたはベクトルとして返されます。このオブジェクトは、プロットのタイプによって、関数表面オブジェクトかパラメーター化された表面オブジェクトのいずれかになります。これらのオブジェクトを使用して、特定のラインのプロパティのクエリと変更を行います。詳細については、FunctionSurface のプロパティ および ParameterizedFunctionSurface のプロパティ を参照してください。
アルゴリズム
fsurf は f のシンボリック変数を x 軸に、次に y 軸に割り当て、symvar は割り当てられる変数の順番を決定します。そのため、変数名と軸名が対応しない場合があります。fsurf が x または y を対応する軸に割り当てるように強制するには、プロットするシンボリック関数を作成し、そのシンボリック関数を fsurf に渡します。
たとえば、次のコードは f(x,y) = sin(y) を 2 つの方法でプロットします。1 つ目の方法では、y 軸に対して波形を振動させます。つまり、1 つ目のプロットでは変数 y を対応する y 軸に割り当てます。2 つ目のプロットでは、y を x 軸に割り当てます。これがシンボリック関数内で最初の (および唯一の) 変数であるためです。
syms x y; f(x,y) = sin(y); figure; subplot(2,1,1) fsurf(f); subplot(2,1,2) fsurf(f(x,y)); % Or fsurf(sin(y));

バージョン履歴
R2016a で導入
参考
関数
プロパティ
トピック
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)






























