このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
fimplicit
陰的シンボリック方程式または陰的シンボリック関数のプロット
構文
説明
fimplicit(
は、f
,[xmin xmax ymin ymax]
)f
を区間 xmin
< x
< xmax
および ymin
< y
< ymax
でプロットします。関数 fimplicit
は symvar
を使用して、変数を並べ替え、区間を割り当てます。
fimplicit(___,
は、1 つ以上の Name,Value
)Name,Value
引数ペアを使用して、ラインのプロパティを指定します。このオプションは、前述の構文のすべての入力引数の組み合わせで使用できます。Name,Value
ペアの設定はプロットされたすべてのラインに適用されます。個々のラインにオプションを設定するには、fimplicit
によって返されるオブジェクトを使用します。
fimplicit(
は、現在の座標軸 ax
,___)gca
ではなく ax
によって指定される座標軸にプロットします。
は、陰関数 line オブジェクトを返します。このオブジェクトを使用して、特定のラインのプロパティのクエリと変更を行います。詳細は、ImplicitFunctionLine のプロパティ を参照してください。fi
= fimplicit(___)
例
陰的シンボリック方程式のプロット
fimplicit
を使用して双曲線 をプロットします。関数 fimplicit
は および の既定の区間 を使用します。
syms x y fimplicit(x^2 - y^2 == 1)
陰的シンボリック関数のプロット
関数 で記述される双曲線をプロットする場合、最初に syms
を使用してシンボリック関数 f(x,y)
を宣言します。関数 fimplicit
は および の既定の区間 を使用します。
syms f(x,y)
f(x,y) = x^2 - y^2 - 1;
fimplicit(f)
プロット区間の指定
半円 を、 と の区間でプロットします。プロット区間は、fimplicit
の 2 番目の引数として指定します。
syms x y circle = x^2 + y^2 == 3; fimplicit(circle, [-4 0 -2 2])
複数の陰的方程式のプロット
入力をベクトルとして渡すか、または hold on
を使用すると、複数の方程式を連続して同じ Figure にプロットできます。LineSpec
および名前と値の引数を指定すると、すべてのラインに適用されます。個々のプロットにオプションを設定するには、fimplicit
によって返される関数ハンドルを使用します。
subplot
を使用して、Figure を 2 つのサブプロットに分割します。第 1 サブプロットで、ベクトル入力を使用して と をプロットします。第 2 サブプロットで、hold on
を使用して同じ入力をプロットします。
syms x y circle1 = x^2 + y^2 == 1; circle2 = x^2 + y^2 == 3; subplot(2,1,1) fimplicit([circle1 circle2]) title('Multiple Equations Using Vector Input') subplot(2,1,2) fimplicit(circle1) hold on fimplicit(circle2) title('Multiple Equations Using hold on Command') hold off
ライン プロパティの変更およびマーカーの表示
直径が増加する同心円を 3 つプロットします。最初のラインにはライン幅 2
を使用します。2 番目には円マーカーをもつ赤い破線のライン スタイルを使用します。3 番目にはアスタリスクのマーカーをもつシアンの一点鎖線のライン スタイルを使用します。凡例を表示します。
syms x y circle = x^2 + y^2; fimplicit(circle == 1, 'Linewidth', 2) hold on fimplicit(circle == 2, '--or') fimplicit(circle == 3, '-.*c') legend('show','Location','best') hold off
陰関数プロットの作成後の変更
をプロットします。fimplicit
がプロット オブジェクトを返すように出力を指定します。
syms x y eqn = y*sin(x) + x*cos(y) == 1; fi = fimplicit(eqn)
fi = ImplicitFunctionLine with properties: Function: x*cos(y) + y*sin(x) == 1 Color: [0 0.4470 0.7410] LineStyle: '-' LineWidth: 0.5000 Show all properties
ドット表記を使用してプロパティを設定することにより、プロットされた方程式を に変更します。同様に、ラインの色を赤に、ライン スタイルを一点鎖線に変更します。出力にある横縦のラインはアーティファクトであり、無視されます。
fi.Function = x/cos(y) + y/sin(x) == 0; fi.Color = 'r'; fi.LineStyle = '-.';
タイトルと座標軸ラベルの追加、および目盛りの書式設定
を区間 および にプロットします。タイトルと座標軸ラベルを追加します。x 軸の範囲を pi/2
の間隔にして、x 軸の目盛りを作成します。XTick
プロパティを使用して、これらの目盛りを表示します。arrayfun
を使用して texlabel
を S
に適用して、x 軸ラベルを作成します。XTickLabel
プロパティを使用して、これらのラベルを表示します。以上の手順を、y 軸について繰り返します。
プロットに LaTeX を使用する方法については、latex
を参照してください。
syms x y eqn = x*cos(y) + y*sin(x) == 1; fimplicit(eqn, [-2*pi 2*pi]) grid on title('x cos(y) + y sin(x) for -2\pi < x < 2\pi and -2\pi < y < 2\pi') xlabel('x') ylabel('y') ax = gca; S = sym(ax.XLim(1):pi/2:ax.XLim(2)); ax.XTick = double(S); ax.XTickLabel = arrayfun(@texlabel, S, 'UniformOutput', false); S = sym(ax.YLim(1):pi/2:ax.YLim(2)); ax.YTick = double(S); ax.YTickLabel = arrayfun(@texlabel, S, 'UniformOutput', false);
ズームでの再評価
プロットにズーム インすると、fimplicit
はプロットを自動的に再評価します。このズームでの再評価を使用すると、より小さなスケールでは表示されていなかった細部が明らかになる可能性があります。
subplot
を使用して、Figure を 2 つに分割します。第 1 サブプロットと第 2 サブプロットの両方で をプロットします。zoom
を使用して第 2 サブプロットを拡大します。拡大したサブプロットには第 1 サブプロットに表示されていない細部が表示されます。
syms x y eqn = x*cos(y) + y*sin(1/x) == 0; subplot(2,1,1) fimplicit(eqn) subplot(2,1,2) fimplicit(eqn) zoom(2)
入力引数
f
— プロット対象の陰的方程式または陰関数
シンボリック方程式 | シンボリック式 | シンボリック関数
プロット対象の陰的方程式または陰関数。シンボリック方程式、シンボリック式またはシンボリック関数として指定します。右辺が指定されない場合、それは 0
であると仮定されます。
[min max]
— x
と y
のプロット範囲
[–5 5] (既定値) | 2 つの数値のベクトル
x
と y
のプロット範囲。2 つの数値のベクトルとして指定します。既定の範囲は、[-5 5]
です。
[xmin xmax ymin ymax]
— x
と y
のプロット範囲
[–5 5 –5 5] (既定値) | 4 つの数値のベクトル
x
と y
のプロット範囲。4 つの数値のベクトルとして指定します。既定の範囲は、[-5 5 -5 5]
です。
ax
— axes オブジェクト
axes オブジェクト
axes オブジェクト。axes オブジェクトを指定しない場合、fimplicit
は現在の座標軸 gca
を使用します。
LineSpec
— ライン スタイル、マーカー、色
string スカラー | 文字ベクトル
ライン スタイル、マーカー、色。記号を含む 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'
ここでは、関数ラインのプロパティの一部だけを紹介しています。一覧については、ImplicitFunctionLine のプロパティ を参照してください。
MeshDensity
— 方向ごとの評価点の数
151 (既定値) | 数値
方向ごとの評価点の数。数値として指定します。既定値は 151
です。
Color
— ラインの色
[0 0.4470 0.7410]
(既定値) | RGB 3 成分 | 16 進数のカラー コード | 'r'
| 'g'
| 'b'
| ...
ラインの色。RGB 3 成分、16 進数のカラー コード、色の名前、または省略名として指定します。
カスタム色には、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" |
MATLAB® で多くの種類のプロットで使用されている既定の色の RGB 3 成分および 16 進数のカラー コードを次に示します。
RGB 3 成分 | 16 進数のカラー コード | 外観 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
例: 'blue'
例: [0 0 1]
例: '#0000FF'
LineStyle
— ライン スタイル
"-"
(既定値) | "--"
| ":"
| "-."
| "none"
ライン スタイル。次の表のいずれかのオプションに指定します。
ライン スタイル | 説明 | 結果として得られるライン |
---|---|---|
"-" | 実線 |
|
"--" | 破線 |
|
":" | 点線 |
|
"-." | 一点鎖線 |
|
"none" | ラインなし | ラインなし |
LineWidth
— ライン幅
0.5
(既定値) | 正の値
ライン幅。ポイント単位の正の値として指定します。1 ポイント = 1/72 インチです。ラインがマーカーをもつ場合、ライン幅はマーカー エッジにも影響します。
ライン幅はピクセルの幅よりも細くすることはできません。ライン幅をシステムのピクセル幅よりも小さい値に設定すると、線は 1 ピクセルの幅で表示されます。
Marker
— マーカー記号
"none"
(既定値) | "o"
| "+"
| "*"
| "."
| ...
マーカー記号。この表にリストされたいずれかの値として指定します。既定では、オブジェクトにマーカーが表示されません。マーカー記号を指定すると、各データ点または頂点にマーカーが追加されます。
マーカー | 説明 | 結果として得られるマーカー |
---|---|---|
"o" | 円 |
|
"+" | プラス記号 |
|
"*" | アスタリスク |
|
"." | 点 |
|
"x" | 十字 |
|
"_" | 横線 |
|
"|" | 縦線 |
|
"square" | 正方形 |
|
"diamond" | 菱形 |
|
"^" | 上向き三角形 |
|
"v" | 下向き三角形 |
|
">" | 右向き三角形 |
|
"<" | 左向き三角形 |
|
"pentagram" | 星形五角形 |
|
"hexagram" | 星形六角形 |
|
"none" | マーカーなし | 適用不可 |
MarkerEdgeColor
— マーカーの輪郭の色
"auto"
(既定値) | RGB 3 成分 | 16 進数のカラー コード | "r"
| "g"
| "b"
| ...
マーカーの輪郭の色。"auto"
、RGB 3 成分、16 進数のカラー コード、色の名前、または省略名として指定します。既定値 "auto"
では Color
プロパティと同じ色が使用されます。
カスタム色には、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" | 適用不可 | 適用不可 | 適用不可 | 色なし |
MATLAB で多くの種類のプロットで使用されている既定の色の RGB 3 成分および 16 進数のカラー コードを次に示します。
RGB 3 成分 | 16 進数のカラー コード | 外観 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
MarkerFaceColor
— マーカーの塗りつぶし色
'none'
(既定値) | 'auto'
| RGB 3 成分 | 16 進数のカラー コード | 'r'
| 'g'
| 'b'
| ...
マーカーの塗りつぶし色。'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" | 適用不可 | 適用不可 | 適用不可 | 色なし |
MATLAB で多くの種類のプロットで使用されている既定の色の RGB 3 成分および 16 進数のカラー コードを次に示します。
RGB 3 成分 | 16 進数のカラー コード | 外観 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
例: [0.3 0.2 0.1]
例: 'green'
例: '#D2F9A7'
MarkerSize
— マーカー サイズ
6
(既定値) | 正の値
マーカー サイズ。ポイント単位の正の値として指定します。1 ポイント = 1/72 インチです。
出力引数
fi
— 1 つ以上の陰関数 line オブジェクト
スカラー | ベクトル
1 つ以上の陰関数 line オブジェクト。スカラーまたはベクトルとして返されます。これらのオブジェクトを使用して、特定のラインのプロパティのクエリと変更を行います。プロパティの一覧については、ImplicitFunctionLine のプロパティ を参照してください。
アルゴリズム
fimplicit
は f
のシンボリック変数を x
軸に、次に y
軸に割り当て、symvar
は割り当てられる変数の順番を決定します。そのため、変数名と軸名が対応しない場合があります。fimplicit
が x または y を対応する軸に割り当てるように強制するには、プロットするシンボリック関数を作成し、そのシンボリック関数を fimplicit
に渡します。
たとえば、次のコードは陰関数 f(x,y) = sin(y) のルートを 2 つの方法でプロットします。1 つ目の方法では、y 軸に対して波形を振動させます。2 つ目の方法では、y を x 軸に割り当てます。これがシンボリック関数内で最初の (および唯一の) 変数であるためです。
syms x y; f(x,y) = sin(y); intvl = [-6 6]*pi; figure; subplot(2,1,1) fimplicit(f,intvl); subplot(2,1,2) fimplicit(f(x,y),intvl); % Or fimplicit(sin(y) == 0,intvl);

バージョン履歴
R2016b で導入
参考
関数
プロパティ
トピック
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)