stem
離散データ列のプロット

構文
説明
ベクトルと行列のデータ
stem( は、x 軸に沿ったベースラインから伸びるステムとして、データ シーケンス Y)Y をプロットします。データ値は、各ステムの終点となる円によって表されます。
Yがベクトルの場合、x 軸の範囲は 1 からlength(Y)までになります。Yが行列の場合、stemは同じ x 値に対して 1 行のすべての要素をプロットします。x 軸の範囲は 1 からYの行数までになります。
stem( は、X,Y)X で指定した値に、データ シーケンス Y をプロットします。入力 X と Y は、同じサイズのベクトルまたは行列でなければなりません。また、X は行ベクトルまたは列ベクトルで、Y は length(X) 行の行列でなければなりません。
XとYが両方ともベクトルの場合、stemはYのエントリを対応するXのエントリに対してプロットします。XがベクトルでYが行列の場合、stemはYの 1 行のすべての要素が同じ値に対してプロットされるように、Xで指定された一連の値に対して、Yの各列をプロットします。XとYが両方とも行列の場合、stemはYの列を対応するXの列に対してプロットします。
stem(___, は、円を塗りつぶします。このオプションは、前述の構文のすべての入力引数の組み合わせで使用できます。"filled")
例
~ の範囲にある 50 個のデータ値のステム プロットを作成します。
figure Y = linspace(-2*pi,2*pi,50); stem(Y)

データ値は、ベースラインから伸び、データ値で終了するステムとしてプロットされます。Y の長さによって、x 軸上の各ステムの位置が自動的に決定されます。
2 列の行列を使って、2 つのデータ系列をプロットします。
figure X = linspace(0,2*pi,50)'; Y = [cos(X), 0.5*sin(X)]; stem(Y)

Y の各列は個別の系列としてプロットされ、Y の同じ行のエントリは同じ x 値に対してプロットされます。Y の行数によって、x 軸上の各ステムの位置が自動的に生成されます。
0 ~ で評価された 50 個のデータの余弦値をプロットし、ステム プロット用に一連の x 値を指定します。
figure X = linspace(0,2*pi,50)'; Y = cos(X); stem(X,Y)

最初のベクトル入力によって、x 軸上の各ステムの位置が決定されます。
0 ~ で評価された 50 個のデータの正弦値と余弦値をプロットし、ステム プロット用に一連の x 値を指定します。
figure X = linspace(0,2*pi,50)'; Y = [cos(X), 0.5*sin(X)]; stem(X,Y)

ベクトル入力によって、両方のデータ系列の x 軸の位置が決定されます。
異なる x の一連の値に、評価された 50 個のデータの正弦値と余弦値をプロットします。系列ごとに対応する一連の x 値を指定します。
figure x1 = linspace(0,2*pi,50)'; x2 = linspace(pi,3*pi,50)'; X = [x1, x2]; Y = [cos(x1), 0.5*sin(x2)]; stem(X,Y)

X の各列は、Y の対応する列に対してプロットされます。
ステム プロットを作成し、各ステムの終点となる円を塗りつぶします。
X = linspace(0,10,20)';
Y = (exp(0.25*X));
stem(X,Y,'filled')
ステム プロットを作成し、LineSpec オプションを使って、ライン スタイルを点線、マーカー記号を菱形、色を赤に設定します。
figure
X = linspace(0,2*pi,50)';
Y = (exp(X).*sin(X));
stem(X,Y,':diamondr')
菱形の内側に色を付けるには、'fill' オプションを使用します。
ステム プロットを作成し、Name,Value ペアの引数を使って、ライン スタイルを一点鎖線、マーカー面の色を赤、マーカー エッジの色を緑に設定します。
figure X = linspace(0,2*pi,25)'; Y = (cos(2*X)); stem(X,Y,'LineStyle','-.',... 'MarkerFaceColor','red',... 'MarkerEdgeColor','green')

ステムは、既定の色のままです。
R2022b 以降
table のデータをプロットするには、table を関数 stem に渡してプロット対象の変数を指定すると便利です。
weather.csv の最初の 100 行 7 列を timetable tbl として読み取ります。次に、table の最初の 3 行を表示します。
tbl = readtimetable("weather.csv","Range",[1 1 101 7]); head(tbl,3)
Time WindDirection WindSpeed Humidity Temperature RainInchesPerMinute CumulativeRainfall
____________________ _____________ _________ ________ ___________ ___________________ __________________
25-Oct-2021 00:00:09 46 1 84 49.2 0 0
25-Oct-2021 00:01:09 45 1.6 84 49.2 0 0
25-Oct-2021 00:02:09 36 2.2 84 49.2 0 0
行時間を "x" 軸にプロットし、変数 CumulativeRainfall を "y" 軸にプロットします。timetable のデータをプロットする場合、行時間は既定で "x" 軸にプロットされます。したがって、変数 Time を指定する必要はありません。Stem オブジェクトを h として返します。軸ラベルが変数名と一致することに注目してください。
h = stem(tbl,"CumulativeRainfall");
Color プロパティを設定して、プロットの色を紫に変更します。
h.Color = [0.5 0 0.8];

R2022b 以降
ベクトル x、y1、y2 を作成し、それらを使用して table を作成します。変数 x に対して変数 y1 および y2 をプロットし、axis padded コマンドを使用してステムがプロット ボックスにオーバーラップしないようにします。次に凡例を追加すると、凡例ラベルが table 変数名と一致することがわかります。
x = (0:0.1:2.9)'; y1 = cos(x); y2 = sin(x); tbl = table(x,y1,y2); stem(tbl,"x",["y1","y2"]); % Pad axes and add a legend axis padded legend

あるいは、変数 x を省略して、table の行インデックスに対して変数 y1 および y2 をプロットすることもできます。
stem(tbl,["y1","y2"]); axis padded legend

関数 tiledlayout および関数 nexttile を使用して、プロットをタイル表示できます。関数 tiledlayout を呼び出して、2 行 1 列のタイル表示チャート レイアウトを作成します。関数 nexttile を呼び出して、axes オブジェクト ax1 および ax2 を作成します。axes オブジェクトを stem の最初の引数として指定することで、座標軸に個別のステム プロットを作成します。
x = 0:25; y1 = exp(0.1*x); y2 = -exp(.05*x); tiledlayout(2,1) % Top plot ax1 = nexttile; stem(ax1,x,y1) % Bottom plot ax2 = nexttile; stem(ax2,x,y2)

3 次元ステム プロットを作成し、stem series オブジェクトを返します。
X = linspace(0,2);
Y = X.^3;
Z = exp(X).*cos(Y);
h = stem3(X,Y,Z,'filled');
色をマゼンタに、マーカー面の色を黄色に変更します。view を使って図の軸の角度を調節します。プロパティの設定にはドット表記を使用します。
h.Color = 'm'; h.MarkerFaceColor = 'y'; view(-10,35)

ステム プロットを作成し、ベースラインのプロパティを変更します。
X = linspace(0,2*pi,50); Y = exp(0.3*X).*sin(3*X); h = stem(X,Y);

ベースラインのライン スタイルを変更します。プロパティの設定にはドット表記を使用します。
hbase = h.BaseLine;
hbase.LineStyle = '--';
Visible プロパティを 'off' に設定してベースラインを非表示にします。
hbase.Visible = 'off';ベースライン レベルが 2 のステム プロットを作成します。
X = linspace(0,2*pi,50)';
Y = (exp(0.3*X).*sin(3*X));
stem(X,Y,'BaseValue',2);
入力引数
表示するデータ列。ベクトルまたは行列として指定します。Y がベクトルの場合、stem は Stem オブジェクトを 1 つ作成します。Y が行列の場合、stem は列ごとに別個の Stem オブジェクトを作成します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
Y のデータ値をプロットする位置。ベクトルまたは行列として指定します。Y がベクトルの場合、X は同じサイズのベクトルでなければなりません。Y が行列の場合、X は同じサイズの行列または長さが Y の行数と等しいベクトルでなければなりません。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
ライン スタイル、マーカー、および色。記号を含む 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] |
|
プロットするデータが含まれるソース table。table または timetable として指定します。
y 座標を含む table 変数。table のインデックス方式の 1 つを使用して指定します。
| インデックス方式 | 例 |
|---|---|
変数名:
|
|
変数インデックス:
|
|
変数の型:
|
|
指定する table 変数には、数値、categorical 値、datetime 値、または duration 値を含めることができます。xvar と yvar の両方が複数の変数を指定する場合、変数の数は同じでなければなりません。
例: stem(tbl,"x",["y1","y2"]) は、y 座標用に y1 および y2 という名前の table 変数を指定します。
例: stem(tbl,"x",2) は、y 座標用に 2 番目の変数を指定します。
例: stem(tbl,"x",vartype("numeric")) は、y 座標用にすべての数値変数を指定します。
x 座標を含む table 変数。table のインデックス方式の 1 つを使用して指定します。
| インデックス方式 | 例 |
|---|---|
変数名:
|
|
変数インデックス:
|
|
変数の型:
|
|
指定する table 変数には、数値、categorical 値、datetime 値、または duration 値を含めることができます。xvar と yvar の両方が複数の変数を指定する場合、変数の数は同じでなければなりません。
例: stem(tbl,["x1","x2"],"y") は、x 座標用に x1 および x2 という名前の table 変数を指定します。
例: stem(tbl,2,"y") は、x 座標用に 2 番目の変数を指定します。
例: stem(tbl,vartype("numeric"),"y") は、x 座標用にすべての数値変数を指定します。
Axes オブジェクト。座標軸を指定しない場合、stem は現在の座標軸にプロットします。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name を引用符で囲みます。
例: "LineStyle",":","MarkerFaceColor","red" は、点線でステムをプロットし、マーカーの面を赤に色付けします。
ここには一部の Stem のプロパティのみを示します。完全な一覧については、Stem のプロパティ を参照してください。
ライン スタイル。次の表にリストされたオプションのいずれかとして指定します。
| ライン スタイル | 説明 | 結果として得られる線 |
|---|---|---|
"-" | 実線 |
|
"--" | 破線 |
|
":" | 点線 |
|
"-." | 一点鎖線 |
|
"none" | ラインなし | ラインなし |
ライン幅。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。ラインがマーカーをもつ場合、ライン幅はマーカー エッジにも影響します。
ライン幅をピクセルの幅より細くすることはできません。システムでライン幅をピクセルの幅より細い値に設定すると、ラインは 1 ピクセル幅で表示されます。
ステムの色。RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。
カスタム色を使用する場合は、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" | 該当なし | 該当なし | 該当なし | 色なし |
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。 |
|
|
|
orderedcolors 関数と rgb2hex 関数を使用すると、これらのパレットの RGB 3 成分および 16 進数カラー コードを取得できます。たとえば、"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 進数カラー コードを取得します。
例: "blue"
例: [0 0 1]
例: "#0000FF"
マーカー記号。次の表に挙げるマーカーのいずれかとして指定します。
| マーカー | 説明 | 結果のマーカー |
|---|---|---|
"o" | 円 |
|
"+" | プラス記号 |
|
"*" | アスタリスク |
|
"." | 点 |
|
"x" | 十字 |
|
"_" | 水平線 |
|
"|" | 垂直線 |
|
"square" | 正方形 |
|
"diamond" | 菱形 |
|
"^" | 上向き三角形 |
|
"v" | 下向き三角形 |
|
">" | 右向き三角形 |
|
"<" | 左向き三角形 |
|
"pentagram" | 星形五角形 |
|
"hexagram" | 星形六角形 |
|
"none" | マーカーなし | 該当なし |
例: "+"
例: "diamond"
マーカー サイズ。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。
マーカーの輪郭の色。"auto"、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。既定値 "auto" では、Color プロパティと同じ色が使用されます。
カスタム色を使用する場合は、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" | 該当なし | 該当なし | 該当なし | 色なし |
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。 |
|
|
|
orderedcolors 関数と rgb2hex 関数を使用すると、これらのパレットの RGB 3 成分および 16 進数カラー コードを取得できます。たとえば、"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 進数カラー コードを取得します。
マーカーの塗りつぶし色。"auto"、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。"auto" オプションは親座標軸の Color プロパティと同じ色を使用します。"auto" を指定し、座標軸のプロット ボックスが非表示の場合、マーカーの塗りつぶし色は Figure の色です。
カスタム色を使用する場合は、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" | 該当なし | 該当なし | 該当なし | 色なし |
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。 |
|
|
|
orderedcolors 関数と rgb2hex 関数を使用すると、これらのパレットの RGB 3 成分および 16 進数カラー コードを取得できます。たとえば、"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 進数カラー コードを取得します。
出力引数
Stem オブジェクト。特定の Stem オブジェクトの作成後に同オブジェクトのプロパティの変更に使用できる、一意の識別子です。
拡張機能
stem 関数は GPU 配列入力をサポートしますが、次の使用上の注意および制限があります。
この関数は GPU 配列を受け入れますが、GPU 上では実行されません。
詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
使用上の注意および制限:
この関数は分散配列に対して演算を行いますが、クライアントの MATLAB® で実行されます。
詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2006a より前に導入ステム プロットでは、プロット ボックスの端とのオーバーラップを防ぐために、x 軸の右側と左側にパディングが追加されるようになりました。
table を関数 stem に渡し、その後にプロット対象の変数を渡すことで、プロットを作成します。データを table として指定すると、軸ラベルと凡例 (存在する場合) に table 変数名を使用して自動的にラベルが付けられます。
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)




























