scatterhistogram
ヒストグラムを伴う散布図の作成
構文
説明
scatterhistogram(___,
は、1 つ以上の名前と値のペアの引数を使用して、周辺ヒストグラムを伴う散布図の追加オプションを指定します。オプションは他のすべての入力引数の後に指定します。プロパティの一覧については、ScatterHistogramChart のプロパティ を参照してください。Name,Value
)
scatterhistogram(
は、parent
,___)parent
によって指定された Figure、パネル、またはタブ内に周辺ヒストグラムを伴う散布図を作成します。
は、s
= scatterhistogram(___)ScatterHistogramChart
オブジェクトを返します。作成後にオブジェクトを変更するには、s
を使用します。プロパティの一覧については、ScatterHistogramChart のプロパティ を参照してください。
例
表形式のデータを使用したヒストグラム付き散布図
内科患者データの table から周辺ヒストグラムを伴う散布図を作成します。
patients
データセットを読み込み、ワークスペースに読み込んだ変数のサブセットから table を作成します。次に、Height
値と Weight
値を比較するヒストグラム付き散布図を作成します。
load patients tbl = table(LastName,Age,Gender,Height,Weight); s = scatterhistogram(tbl,'Height','Weight');
グループ化データの table 変数の指定
patients
データセットを使用して、周辺ヒストグラムを伴う散布図を作成し、データのグループ化に使用する table 変数を指定します。
patients
データセットを読み込み、そのデータからヒストグラム付き散布図を作成します。患者の Systolic
と Diastolic
の値を比較します。名前と値のペアの引数 'GroupVariable'
を 'Smoker'
に設定することで、患者の喫煙状況に従ってデータをグループ化します。
load patients tbl = table(LastName,Diastolic,Systolic,Smoker); s = scatterhistogram(tbl,'Diastolic','Systolic','GroupVariable','Smoker');
categorical データと数値データの可視化
周辺ヒストグラムを伴う散布図を使用して、categorical および数値の医療データを可視化します。
patients
データセットを読み込み、Smoker
データを categorical 配列に変換します。次に、患者の Age
値と喫煙状況を比較するヒストグラム付き散布図を作成します。結果の散布図には、オーバーラップするデータ点が含まれています。ただし、y 軸の周辺ヒストグラムは、データセット内には喫煙者よりもはるかに多くの非喫煙者がいることを示しています。
load patients Smoker = categorical(Smoker); s = scatterhistogram(Age,Smoker); xlabel('Age') ylabel('Smoker')
グループ データの指定とチャート プロパティのカスタマイズ
靴のデータの配列を使用して、周辺ヒストグラムを伴う散布図を作成します。靴の色に従ってデータをグループ化し、ヒストグラム付き散布図のプロパティをカスタマイズします。
データの配列を作成します。次に、ヒストグラム付き散布図を作成して、データを可視化します。x 軸と y 軸に沿ったカスタム ラベルを使用して、最初の 2 つの入力引数の変数名を指定します。ScatterHistogramChart
オブジェクトのプロパティを設定することで、タイトル、軸ラベル、凡例のタイトルを指定できます。
xvalues = [7 6 5 6.5 9 7.5 8.5 7.5 10 8]; yvalues = categorical({'onsale','regular','onsale','onsale', ... 'regular','regular','onsale','onsale','regular','regular'}); grpvalues = {'Red','Black','Blue','Red','Black','Blue','Red', ... 'Red','Blue','Black'}; s = scatterhistogram(xvalues,yvalues,'GroupData',grpvalues); s.Title = 'Shoe Sales'; s.XLabel = 'Shoe Size'; s.YLabel = 'Price'; s.LegendTitle = 'Shoe Color';
グループ ラベルに一致するように、ヒストグラム付き散布図内の色を変更します。すべてのグループで同じになるようにヒストグラムのビン幅を変更します。
s.Color = {'Red','Black','Blue'}; s.BinWidths = 1;
ヒストグラム付き散布図の外観の指定
周辺ヒストグラムを伴う散布図を作成します。ヒストグラムのビン数とライン幅、散布図の場所、凡例の可視性を指定します。
patients
データセットを読み込み、そのデータからヒストグラム付き散布図を作成します。患者の Diastolic
と Systolic
の値を比較し、患者の SelfAssessedHealthStatus
の値に従ってデータをグループ化します。NumBins
オプションと LineWidth
オプションを指定することで、ヒストグラムを調整します。ScatterPlotLocation
オプションを使用して、Figure の 'NorthEast'
の位置に散布図を配置します。LegendVisible
オプションを 'on'
と指定することで、凡例が表示されることを確認します。
load patients tbl = table(LastName,Diastolic,Systolic,SelfAssessedHealthStatus); s = scatterhistogram(tbl,'Diastolic','Systolic','GroupVariable','SelfAssessedHealthStatus', ... 'NumBins',4,'LineWidth',1.5,'ScatterPlotLocation','NorthEast','LegendVisible','on');
2 つの変数を使用したデータのグループ化
周辺ヒストグラムを伴う散布図を作成します。2 つの異なる変数の組み合わせを使用してデータをグループ化します。
patients
データ セットを読み込みます。Smoker
と Gender
の各データを組み合わせ、新しい変数を作成します。患者の Diastolic
と Systolic
の値を比較するヒストグラム付き散布図を作成します。新しい変数 SmokerGender
を使用して、ヒストグラム付き散布図内のデータをグループ化します。
load patients [idx,genderStatus,smokerStatus] = findgroups(string(Gender),string(Smoker)); SmokerGender = strcat(genderStatus(idx),"-",smokerStatus(idx)); s = scatterhistogram(Diastolic,Systolic,'GroupData',SmokerGender,'LegendVisible','on'); xlabel('Diastolic') ylabel('Systolic')
カーネル密度図の指定
周辺カーネル密度ヒストグラムを伴う散布図を作成します。
patients
データ セットを読み込みます。変数 Diastolic
、Systolic
、および Smoker
から table を作成します。
load patients.mat
tbl = table(Diastolic,Systolic,Smoker);
患者の Diastolic
と Systolic
の血圧値を比較するヒストグラム付き散布図を作成します。患者の喫煙状態を使用してデータをグループ化し、周辺カーネル密度プロットを表示します。プロットから、喫煙者の方が非喫煙者に比べて収縮期と拡張期の血圧の平均が高いことがわかります。
s = scatterhistogram(tbl,"Diastolic","Systolic", ... GroupVariable="Smoker",HistogramDisplayStyle="smooth", ... LineStyle="-");
入力引数
tbl
— ソース table
table
ソース table。table として指定します。
関数 table
を使用してワークスペース変数から table を作成できます。また、関数 readtable
を使用してデータを table としてインポートできます。
ScatterHistogramChart
オブジェクトの SourceTable
プロパティにソース table が格納されます。
xvar
— x 軸の table 変数
文字ベクトル | string スカラー | 数値スカラー | logical ベクトル
x 軸の table 変数。次のいずれかの形式で指定します。
文字ベクトルまたは string スカラー — いずれかの変数名を示します。たとえば、
scatterhistogram(tbl,'Acceleration','Horsepower')
は x 軸として'Acceleration'
という名前の変数を選択します。数値スカラー — table 変数のインデックスを示します。たとえば、
scatterhistogram(tbl,5,3)
は x 軸として table 内の 5 番目の変数を選択します。logical ベクトル — 1 つの
true
要素を含みます。
table 変数に関連付けられた値は、数値型または categorical
でなければなりません。
選択された変数名は、ScatterHistogramChart
オブジェクトの XVariable
プロパティに格納されます。
yvar
— y 軸の table 変数
文字ベクトル | string スカラー | 数値スカラー | logical ベクトル
y 軸の table 変数。次のいずれかの形式で指定します。
文字ベクトルまたは string スカラー — いずれかの変数名を示します。たとえば、
scatterhistogram(tbl,'Acceleration','Horsepower')
は y 軸として'Horsepower'
という名前の変数を選択します。数値スカラー — table 変数のインデックスを示します。たとえば、
scatterhistogram(tbl,5,3)
は y 軸として table 内の 3 番目の変数を選択します。logical ベクトル — 1 つの
true
要素を含みます。
table 変数に関連付けられた値は、数値型または categorical
でなければなりません。
選択された変数名は、ScatterHistogramChart
オブジェクトの YVariable
プロパティに格納されます。
grpvar
— グループ化データの table 変数
文字ベクトル | string スカラー | 数値スカラー | logical ベクトル
グループ化データの table 変数。次のいずれかの形式で指定します。
文字ベクトルまたは string スカラー — いずれかの変数名を示す
数値スカラー — table 変数のインデックスを示す
logical ベクトル — 1 つの
true
要素を含む
table 変数に関連付けられた値は、数値ベクトル、logical ベクトル、categorical 配列、string 配列、または文字ベクトルの cell 配列を形成しなければなりません。
grpvar
は、xvar
と yvar
のデータを一意のグループに分割します。各グループは、それぞれの座標軸で既定の色と独立のヒストグラムをもちます。凡例では、scatterhistogram
はグループ名を GroupData
内における初回出現順に表示します。
例: 'Model_Year'
例: 2
xvalues
— x 軸に沿って表示される値
数値ベクトル | categorical 配列
x 軸に沿って表示される値。数値ベクトルまたは categorical 配列として指定します。
ScatterHistogramChart
オブジェクトの XData
プロパティに xvalues
データが格納されます。
例: [0.5 4.3 2.4 5.6 3.4]
例: categorical({'small','medium','small','large','medium','small'})
yvalues
— y 軸に沿って表示される値
数値ベクトル | categorical 配列
y 軸に沿って表示される値。数値ベクトルまたは categorical 配列として指定します。
ScatterHistogramChart
オブジェクトの YData
プロパティに yvalues
データが格納されます。
例: [0.5 4.3 2.4 5.6 3.4]
例: categorical({'small','medium','small','large','medium','small'})
grpvalues
— グループ値
数値ベクトル | logical ベクトル | categorical 配列 | string 配列 | 文字ベクトルの cell 配列
散布図と対応する周辺ヒストグラムのグループ値。数値ベクトル、logical ベクトル、categorical 配列、string 配列、または文字ベクトルの cell 配列として指定します。
grpvalues
は、xvalues
と yvalues
のデータを一意のグループに分割します。各グループは、それぞれの座標軸で既定の色と独立のヒストグラムをもちます。凡例では、scatterhistogram
はグループ名を GroupData
内における初回出現順に表示します。
例: [1 2 1 3 2 1 3]
例: categorical({'blue','green','green','blue','green'})
parent
— 親コンテナー
Figure
オブジェクト | Panel
オブジェクト | Tab
オブジェクト | TiledChartLayout
オブジェクト | GridLayout
オブジェクト
親コンテナー。Figure
オブジェクト、Panel
オブジェクト、Tab
オブジェクト、TiledChartLayout
オブジェクト、または GridLayout
オブジェクトとして指定します。
名前と値の引数
引数のオプションのペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name
を引用符で囲みます。
例: scatterhistogram(tbl,xvar,yvar,'GroupVariable',grpvar,'HistogramDisplayStyle','stairs')
は grpvar
をグループ化変数として指定し、散布図の隣に階段状プロットを表示します。
メモ
ここでは、プロパティの一部だけを紹介しています。完全な一覧については、ScatterHistogramChart のプロパティ を参照してください。
Title
— チャートのタイトル
''
(既定値) | 文字ベクトル | string 配列 | 文字ベクトルの cell 配列 | categorical 配列
チャートのタイトル。文字ベクトル、string 配列、文字ベクトルの cell 配列または categorical 配列として指定します。既定のチャートにはタイトルがありません。
複数行のタイトルを作成するには、string 配列または文字ベクトルの cell 配列を指定します。配列の各要素は、テキストの行に対応します。
タイトルを categorical 配列として指定した場合、MATLAB® はカテゴリではなく、配列内の値を使用します。
例: s = scatterhistogram(__,'Title','My Title Text')
例: s.Title = 'My Title Text'
例: s.Title = {'My','Title'}
NumBins
— ヒストグラム ビンの数
正の整数スカラー | 正の整数列ベクトル | 正の整数行列
ヒストグラム ビンの数。正の整数スカラー、2 行 1 列の正の整数ベクトル、または 2 行 n 列の正の整数行列として指定します。ここで、n は GroupData
内のグループ数です。
指定した値 | 説明 |
---|---|
スカラー | この値は、x と y のヒストグラムのビン数です。 |
2 行 1 列のベクトル | 最初の値は x データのビンの数です。2 番目の値は y データのビンの数です。 |
2 行 n 列の行列 | (1,j) 値は、j 番目のグループ内にある x データのヒストグラムのビン数です。同様に、(2,j) 値は、j 番目のグループ内にある y データのヒストグラムのビン数です。 |
scatterhistogram
は、histogram
の名前と値のペアの引数 'BinMethod','auto'
を使用して、NumBins
と BinWidths
の既定値を決定します。
categorical データの NumBins
は変更できません。
例: s = scatterhistogram(__,'NumBins',20)
例: s.NumBins = [10; 15]
HistogramDisplayStyle
— ヒストグラムの表示スタイル
'stairs'
(既定値) | 'bar'
| 'smooth'
ヒストグラムの表示スタイル。次のオプションのいずれかとして指定します。
表示スタイル | 説明 |
---|---|
'stairs' | バーを塗りつぶさずにヒストグラムの外枠を示す階段状プロットを表示します。 |
'bar' | ヒストグラムの棒グラフを表示します。 |
'smooth' | カーネル密度推定を使用して生成された滑らかなプロットを表示します。 |
scatterhistogram
は、ヒストグラムを生成するために 'pdf'
タイプの正規化を使用します。詳細については、histogram
の名前と値のペアの引数 'Normalization'
を参照してください。
例: s = scatterhistogram(__,'HistogramDisplayStyle','smooth')
例: s.HistogramDisplayStyle = 'bar'
LineWidth
— ヒストグラムのライン幅
正のスカラー | 正のベクトル
ヒストグラムのライン幅。正のスカラーまたはポイント単位の正のベクトルとして指定します。既定では、scatterhistogram
は 0.5
のライン幅をヒストグラムの各プロット ラインに割り当てます。
グループの合計数が指定されたライン幅の数を超えると、scatterhistogram
は指定されたライン幅を先頭から順番に繰り返し使用します。
例: s = scatterhistogram(__,'LineWidth',0.75)
例: s.LineWidth = [0.5 0.75 0.5]
MarkerStyle
— マーカー記号
文字ベクトル | string 配列 | 文字ベクトルの cell 配列
各散布図グループのマーカー記号。次のいずれかの形式で指定します。
マーカー スタイルを示す文字ベクトル
1 つ以上のマーカー スタイルを示す string 配列または文字ベクトルの cell 配列
次のマーカー オプションから選択します。
マーカー | 説明 | 結果のマーカー |
---|---|---|
"o" | 円 |
|
"+" | プラス記号 |
|
"*" | アスタリスク |
|
"." | 点 |
|
"x" | 十字 |
|
"_" | 水平線 |
|
"|" | 垂直線 |
|
"square" | 正方形 |
|
"diamond" | 菱形 |
|
"^" | 上向き三角形 |
|
"v" | 下向き三角形 |
|
">" | 右向き三角形 |
|
"<" | 左向き三角形 |
|
"pentagram" | 星形五角形 |
|
"hexagram" | 星形六角形 |
|
"none" | マーカーなし | 該当なし |
既定では、scatterhistogram
は、マーカー記号 'o'
を散布図内の各グループに割り当てます。グループの合計数が指定された記号の数を超えると、scatterhistogram
は指定された記号を先頭から順番に繰り返し使用します。
例: s = scatterhistogram(__,'MarkerStyle','x')
例: s.MarkerStyle = {'x','o'}
ScatterPlotLocation
— 散布図の場所
'SouthWest'
(既定値) | 'SouthEast'
| 'NorthEast'
| 'NorthWest'
散布図の場所。次のいずれかのオプションとして指定します。
場所 | 説明 |
---|---|
'SouthWest' | 散布図の右上にヒストグラムをプロットします。 |
'SouthEast' | 散布図の左上にヒストグラムをプロットします。 |
'NorthEast' | 散布図の左下にヒストグラムをプロットします。 |
'NorthWest' | 散布図の右下にヒストグラムをプロットします。 |
例: s = scatterhistogram(__,'ScatterPlotLocation','NorthEast')
例: s.ScatterPlotLocation = 'SouthEast'
LegendVisible
— 凡例の可視性の状態
'on'
| 'off'
凡例の可視性の状態。'on'
または 'off'
で指定します。凡例を表示する場合は LegendVisible
を 'on'
に、凡例を非表示にする場合は 'off'
に設定します。
GroupData
が空 ([]
) であるか、1 つのグループが含まれている場合、scatterhistogram
は凡例を表示しません。そうでない場合、凡例が散布図または周辺ヒストグラムにオーバーラップしない限り、scatterhistogram
は既定で凡例を表示します。
凡例では、scatterhistogram
はグループ名を GroupData
内における初回出現順に表示します。
例: s = scatterhistogram(__,'LegendVisible','on')
例: s.LegendVisible = 'off'
出力引数
s
— ヒストグラムを伴う散布図
ScatterHistogramChart
オブジェクト
スタンドアロンの可視化である ScatterHistogramChart
オブジェクト。作成後にオブジェクトを変更するには、s
を使用します。プロパティの一覧については、ScatterHistogramChart のプロパティ を参照してください。
詳細
スタンドアロンの可視化
スタンドアロンの可視化は、特定の目的のために設計され、他のチャートとは独立して機能するチャートです。スタンドアロンの可視化は、plot
や surf
といった他のチャートとは異なり、あらかじめ設定された axes オブジェクトが組み込まれていて、カスタマイズできる項目が限られています。また、スタンドアロンの可視化には以下の特徴があります。
ライン、パッチ、表面といった他のグラフィックス要素と組み合わせることはできません。そのため、
hold
コマンドはサポートされていません。関数
gca
は、現在の座標軸としてチャート オブジェクトを返すことができます。入力引数として axes オブジェクトを受け入れる多くの MATLAB 関数にチャート オブジェクトを渡すことができます。たとえば、関数
title
にチャート オブジェクトを渡すことができます。
ヒント
ScatterHistogramChart
オブジェクトでデータを対話的に調べるには、次のオプションを使用します。これらのオプションの一部は、ライブ エディターでは使用できません。ズーム/パン — スクロール ホイールまたは + ボタンと - ボタンを使用してズームします。散布図をクリックしてドラッグし、移動します。
scatterhistogram
は、現在の散布図の範囲内にあるデータに基づいて周辺ヒストグラムを更新します。データヒント — 散布図または周辺ヒストグラムにカーソルを合わせると、データヒントが表示されます。
table から周辺ヒストグラムを伴う散布図を作成する場合、散布図のデータ ヒントをカスタマイズできます。
データ ヒントの行を追加または削除するには、散布図の任意の場所を右クリックして [データ ヒントの変更] をポイントします。次に、変数を選択または選択解除します。
複数の行を追加または削除するには、プロット上で右クリックして [データ ヒントの変更] をポイントし、[詳細] を選択します。次に、[>>] をクリックして変数を追加するか、[<<] をクリックして変数を削除します。
バージョン履歴
R2018b で導入R2024a: カーネル密度推定に Statistics Toolbox は不要
R2024a 以降では、Statistics and Machine Learning Toolbox™ のライセンスがなくても名前と値の引数 HistogramDisplayStyle
を "smooth"
として指定できます。
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)