Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

area

2 次元プロットの面積の塗りつぶし

説明

area(X,Y) は、x 座標の X に対する Y の値をプロットします。次に、この関数は Y の形状に基づいて曲線間の領域を塗りつぶします。

  • Y がベクトルの場合、プロットには 1 つの曲線が含まれます。area は、曲線と水平軸間の領域を塗りつぶします。

  • Y が行列の場合、プロットには Y の列ごとに 1 つの曲線が含まれます。area は曲線間の領域を塗りつぶしてそれらをスタックし、各 x 座標の高さの合計に対する各行要素の相対的な寄与を示します。

area(Y) は、暗黙的な x 座標のセットに対して Y をプロットし、曲線間の領域を塗りつぶします。

  • Y がベクトルの場合、x 座標は 1 から length(Y) までの範囲となります。

  • Y が行列の場合、x 座標の範囲は、1 から Y の行数までです。

area(___,basevalue) には、面積プロットのベースライン値を指定します。basevalue は水平ベースラインに対応します。area は、曲線とこのライン間に拘束された領域を塗りつぶします。前述のいずれかの構文で、最後の引数として basevalue を指定します。

area(___,Name,Value) は、1 つ以上の名前と値のペアの引数を使用して面積プロットのプロパティを変更します。プロパティは、表示されているすべての領域に適用されます。たとえば、'LineStyle','--' ではプロットの破線のライン スタイルを指定します。前述のいずれかの構文で、すべての引数の後に名前と値のペアを指定します。プロパティの一覧については、Area のプロパティ を参照してください。

area(ax,___) は、ターゲット座標軸に面積プロットを表示します。前述の任意の構文で、最初の引数として座標軸を指定します。

a = area(___) は、1 つ以上の Area オブジェクトを返します。オブジェクトの数は、プロットされた領域の数と同じです。領域のプロパティを作成した後に変更するには a を使用します。プロパティの一覧については、Area のプロパティ を参照してください。

すべて折りたたむ

4 つの値のベクトルを作成します。面積プロットに値を表示します。

y = [1 5 6 3];
area(y)

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

行列 Y を作成します。面積プロットとして Y に値を表示します。Y に 3 つの列があるため、area は 3 つの曲線をプロットし、それらをスタックします。

Y = [1 5 3; 3 2 7; 1 5 3; 2 6 1];
area(Y)

Figure contains an axes. The axes contains 3 objects of type area.

x を 3 つのカーディーラー ID のベクトルとして定義します。Y をモデルあたりの自動車の販売台数を含む行列として定義します。面積プロットの行列に値を表示します。次に、軸ラベルと凡例を追加します。

x = [10 11 12];
Y = [21.6 25.4; 70.8 66.1; 58.0 43.6];
area(x,Y)
xlabel('Dealership ID')
ylabel('Sales')
legend({'Model A','Model B'})

Figure contains an axes. The axes contains 2 objects of type area. These objects represent Model A, Model B.

x 軸の目盛り間隔が x の値になるように設定します。

ax = gca; % current axes
ax.XTick = x;

Figure contains an axes. The axes contains 2 objects of type area. These objects represent Model A, Model B.

行列 Y を作成します。ベースライン値を -4 として面積プロットで Y の値を表示します。area は曲線とライン y = -4 で指定された領域を塗りつぶします。

Y = [1 5 3; 3 2 7; 1 5 3; 2 6 1];
basevalue = -4;
area(Y,basevalue)

Figure contains an axes. The axes contains 3 objects of type area.

行列 Y を作成します。点線スタイルを使用する面積プロットで Y の値を表示します。

Y = [1 3 5; 3 2 7; 3 4 2];
area(Y,'LineStyle',':')

Figure contains an axes. The axes contains 3 objects of type area.

タイル表示チャート レイアウトを 'flow' タイル配置に作成して、座標軸がそのレイアウトの使用可能なスペースを塗りつぶすようにします。次に、関数 nexttile を呼び出して Axes オブジェクトを作成し、それを ax1 として返します。ax1 を関数 area に渡して面積プロットを表示します。

tiledlayout('flow')
ax1 = nexttile;
Y1 = [3 6; 1 5; 7 2; 5 9];
area(ax1,Y1)

Figure contains an axes. The axes contains 2 objects of type area.

このプロセスを繰り返して 2 番目の Axes オブジェクトと 2 番目の面積プロットを作成します。

ax2 = nexttile;
Y2 = [4 2 11; 5 6 0; 1 7 2; 9 5 9];
area(ax2,Y2)

Figure contains 2 axes. Axes 1 contains 2 objects of type area. Axes 2 contains 3 objects of type area.

行列 Y を作成します。次に、面積プロットを作成し、関数 area を呼び出すときに出力引数を指定します。この場合、area は 3 つの Area オブジェクトのベクトルを返します。オブジェクトはそれぞれ Y の別の列に対応します。

Y = [2 3 4; 6 1 5; 7 4 9];
a = area(Y);

Figure contains an axes. The axes contains 3 objects of type area.

2 番目の領域を、太い赤の縁取りをもつ緑に変更します。

a(2).FaceColor = [0.2 0.6 0.5];
a(2).EdgeColor = [0.63 0.08 0.18];
a(2).LineWidth = 2;

Figure contains an axes. The axes contains 3 objects of type area.

3 つの曲線をもつ面積プロットを表示します。

area([1 5 3; 3 2 7; 1 5 3; 2 6 1])

Figure contains an axes. The axes contains 3 objects of type area.

色の順序を、青、紫、グレーに設定します。

newcolors = [0 0.5 1; 0.5 0 1; 0.7 0.7 0.7];
colororder(newcolors)

Figure contains an axes. The axes contains 3 objects of type area.

入力引数

すべて折りたたむ

x 座標。ベクトルまたは行列として指定します。X のサイズと形状は、データの形状と作成するプロットのタイプによって異なります。次の表では、最も一般的な状況について説明します。

プロットのタイプ座標の指定方法
単一の領域

X および Y を同じ長さの行ベクトルまたは列ベクトルの任意の組み合わせとして指定します。以下に例を示します。

area([1 3 5],[9; 4; 6])
X は、増加する値からなるベクトルとして指定します。X の値が増加していない場合、area はプロットする前に値を並べ替えます。

スタックされた領域

area は、Y の列ごとに 1 つの塗りつぶされた領域をプロットし、領域をスタックします。Y を行列として指定し、XY の行数と同じ長さの行または列ベクトルとして指定します。以下に例を示します。

area([1 2 3 4],[3 6; 1 5; 7 2; 5 9])
X の値が増加していない場合、area はプロットする前に値を並べ替えます。

XY と同じサイズの行列として指定することもできます。X が行列の場合に想定外の出力を避けるには、同じ列をもつ X を指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

y 座標。ベクトルまたは行列として指定します。Y のサイズと形状は、データの形状と作成するプロットのタイプによって異なります。次の表で、考えられる状況を説明します。

プロットのタイプ座標の指定方法
単一の領域

X および Y を同じ長さの行ベクトルまたは列ベクトルの任意の組み合わせとして指定します。以下に例を示します。

area([1 3 5],[9; 4; 6])
X は、増加する値からなるベクトルとして指定します。X の値が増加していない場合、area はプロットする前に値を並べ替えます。

スタックされた領域

area は、Y の列ごとに 1 つの塗りつぶされた領域をプロットし、領域をスタックします。Y を行列として指定し、XY の行数と同じ長さの行または列ベクトルとして指定します。以下に例を示します。

area([1 2 3 4],[3 6; 1 5; 7 2; 5 9])
X の値が増加していない場合、area はプロットする前に値を並べ替えます。

XY と同じサイズの行列として指定することもできます。X が行列の場合に想定外の出力を避けるには、同じ列をもつ X を指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | duration

ベースライン値。数値スカラーとして指定します。ベースライン値は、水平ベースラインの y 座標を指定します。area は、データ曲線とこのベースラインの間に拘束された領域を塗りつぶします。

ターゲット座標軸。Axes オブジェクトとして指定します。座標軸を指定しない場合、area は現在の座標軸にプロッを表示します。

名前と値のペアの引数

オプションの Name,Value の引数ペアをコンマ区切りで指定します。Name は引数名で、Value は対応する値です。Name は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を任意の順序で指定できます。

例: area([1 2 3],'FaceColor','r') は、赤の領域の塗りつぶし色を指定します。

メモ

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

領域の塗りつぶし色。RGB 3 成分、16 進数カラー コード、色名、または 'flat' として指定します。

R2017b から、この既定値は座標軸の ColorOrder プロパティの RGB 3 成分です。以前のリリースにおいて、この既定値は 'flat' で、色はカラーマップに基づいていました。

カスタム色を使用する場合は、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'

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

領域の外枠の色。RGB 3 成分、16 進数カラー コード、色名、または 'flat' として指定します。このプロパティを 'flat' として指定する場合は、カラーマップの色を使用します。

カスタム色を使用する場合は、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'

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

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

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

'--'破線

':'点線

'-.'一点鎖線

'none'ラインなしラインなし

領域の外枠の幅。ポイント単位のスカラー数値として指定します。1 ポイントは 1/72 インチです。

例: 1.5

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

ヒント

  • area は、座標軸の ColorOrder プロパティに基づいて色を使用します。すべての色を切り替えた後、色の数より多くの塗りつぶし領域をプロットする場合は、サイクルを繰り返します。

    R2019b 以降、座標軸の ColorOrder プロパティを設定することによって、プロット後に色を変更できます。また、関数 colororder を呼び出して、Figure 内のすべての座標軸の色の順序を変更することもできます。

拡張機能

R2006a より前に導入