Main Content

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

scatterhistogram

ヒストグラムを伴う散布図の作成

説明

scatterhistogram(tbl,xvar,yvar) はテーブル tbl から周辺ヒストグラムを伴う散布図を作成します。入力 xvar は、x 軸に沿って表示する table 変数を示します。入力 yvar は、y 軸に沿って表示する table 変数を示します。

scatterhistogram(tbl,xvar,yvar,'GroupVariable',grpvar)grpvar によって指定された table 変数を使用して、xvaryvar によって指定された観測値をグループ化します。

scatterhistogram(xvalues,yvalues) は、xvaluesyvalues のデータの散布図を作成し、xvalues データと yvalues データの周辺ヒストグラムをそれぞれ x 軸と y 軸に沿って表示します。

scatterhistogram(xvalues,yvalues,'GroupData',grpvalues)grpvalues のデータを使用して、xvaluesyvalues のデータをグループ化します。

scatterhistogram(___,Name,Value) は、1 つ以上の名前と値のペアの引数を使用して、周辺ヒストグラムを伴う散布図の追加オプションを指定します。オプションは他のすべての入力引数の後に指定します。プロパティの一覧については、ScatterHistogramChart のプロパティ を参照してください。

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

patients データセットを使用して、周辺ヒストグラムを伴う散布図を作成し、データのグループ化に使用する table 変数を指定します。

patients データセットを読み込み、そのデータからヒストグラム付き散布図を作成します。患者の SystolicDiastolic の値を比較します。名前と値のペアの引数 'GroupVariable''Smoker' に設定することで、患者の喫煙状況に従ってデータをグループ化します。

load patients
tbl = table(LastName,Diastolic,Systolic,Smoker);
s = scatterhistogram(tbl,'Diastolic','Systolic','GroupVariable','Smoker');

周辺ヒストグラムを伴う散布図を使用して、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 データセットを読み込み、そのデータからヒストグラム付き散布図を作成します。患者の DiastolicSystolic の値を比較し、患者の 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 つの異なる変数の組み合わせを使用してデータをグループ化します。

patients データセットを読み込みます。SmokerGender の各データを組み合わせ、新しい変数を作成します。患者の DiastolicSystolic の値を比較するヒストグラム付き散布図を作成します。新しい変数 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')

カーネル密度の周辺ヒストグラムを伴う散布図を作成します。この例には Statistics and Machine Learning Toolbox™ のライセンスが必要です。

carsmall データセットを読み込み、そのデータからヒストグラム付き散布図を作成します。HorsepowerMPG の値を比較します。GroupVariable オプションを Cylinders に設定することで、シリンダー数を使用してデータをグループ化します。HistogramDisplayStyle オプションを 'smooth' に設定することで、カーネル密度のヒストグラムを指定します。LineStyle オプションを '-' に設定することで、すべてのヒストグラムに対して実線を指定します。

load carsmall
tbl = table(Horsepower,MPG,Cylinders);
s = scatterhistogram(tbl,'Horsepower','MPG', ...
    'GroupVariable','Cylinders','HistogramDisplayStyle','smooth', ...
    'LineStyle','-');

入力引数

すべて折りたたむ

ソース table。table として指定します。

関数 table を使用してワークスペース変数から table を作成できます。また、関数 readtable を使用してデータを table としてインポートできます。

ScatterHistogramChart オブジェクトの SourceTable プロパティにソース table が格納されます。

x 軸の table 変数。次のいずれかの形式で指定します。

  • 文字ベクトルまたは string スカラー — いずれかの変数名を示します。たとえば、scatterhistogram(tbl,'Acceleration','Horsepower') は x 軸として 'Acceleration' という名前の変数を選択します。

  • 数値スカラー — table 変数のインデックスを示します。たとえば、scatterhistogram(tbl,5,3) は x 軸として table 内の 5 番目の変数を選択します。

  • logical ベクトル — 1 つの true 要素を含みます。

table 変数に関連付けられた値は、数値型または categorical でなければなりません。

選択された変数名は、ScatterHistogramChart オブジェクトの XVariable プロパティに格納されます。

y 軸の table 変数。次のいずれかの形式で指定します。

  • 文字ベクトルまたは string スカラー — いずれかの変数名を示します。たとえば、scatterhistogram(tbl,'Acceleration','Horsepower') は y 軸として 'Horsepower' という名前の変数を選択します。

  • 数値スカラー — table 変数のインデックスを示します。たとえば、scatterhistogram(tbl,5,3) は y 軸として table 内の 3 番目の変数を選択します。

  • logical ベクトル — 1 つの true 要素を含みます。

table 変数に関連付けられた値は、数値型または categorical でなければなりません。

選択された変数名は、ScatterHistogramChart オブジェクトの YVariable プロパティに格納されます。

グループ化データの table 変数。次のいずれかの形式で指定します。

  • 文字ベクトルまたは string スカラー — いずれかの変数名を示す

  • 数値スカラー — table 変数のインデックスを示す

  • logical ベクトル — 1 つの true 要素を含む

table 変数に関連付けられた値は、数値ベクトル、logical ベクトル、categorical 配列、string 配列、または文字ベクトルの cell 配列を形成しなければなりません。

grpvar は、xvaryvar のデータを一意のグループに分割します。各グループは、それぞれの座標軸で既定の色と独立のヒストグラムをもちます。凡例では、scatterhistogram はグループ名を GroupData 内における初回出現順に表示します。

例: 'Model_Year'

例: 2

x 軸に沿って表示される値。数値ベクトルまたは categorical 配列として指定します。

ScatterHistogramChart オブジェクトの XData プロパティに xvalues データが格納されます。

例: [0.5 4.3 2.4 5.6 3.4]

例: categorical({'small','medium','small','large','medium','small'})

y 軸に沿って表示される値。数値ベクトルまたは categorical 配列として指定します。

ScatterHistogramChart オブジェクトの YData プロパティに yvalues データが格納されます。

例: [0.5 4.3 2.4 5.6 3.4]

例: categorical({'small','medium','small','large','medium','small'})

散布図と対応する周辺ヒストグラムのグループ値。数値ベクトル、logical ベクトル、categorical 配列、string 配列、または文字ベクトルの cell 配列として指定します。

grpvalues は、xvaluesyvalues のデータを一意のグループに分割します。各グループは、それぞれの座標軸で既定の色と独立のヒストグラムをもちます。凡例では、scatterhistogram はグループ名を GroupData 内における初回出現順に表示します。

例: [1 2 1 3 2 1 3]

例: categorical({'blue','green','green','blue','green'})

親コンテナー。FigurePanelTabTiledChartLayout、または GridLayout オブジェクトとして指定します。

名前と値のペアの引数

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

例: scatterhistogram(tbl,xvar,yvar,'GroupVariable',grpvar,'HistogramDisplayStyle','stairs')grpvar をグループ化変数として指定し、散布図の隣に階段状プロットを表示します。

メモ

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

チャートのタイトル。文字ベクトル、string 配列、文字ベクトルの cell 配列または categorical 配列として指定します。既定のチャートにはタイトルがありません。

複数行のタイトルを作成するには、string 配列または文字ベクトルの cell 配列を指定します。配列の各要素は、テキストの行に対応します。

タイトルを categorical 配列として指定した場合、MATLAB® はカテゴリではなく、配列内の値を使用します。

例: s = scatterhistogram(__,'Title','My Title Text')

例: s.Title = 'My Title Text'

例: s.Title = {'My','Title'}

ヒストグラム ビンの数。正の整数スカラー、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' を使用して、NumBinsBinWidths の既定値を決定します。

categorical データの NumBins は変更できません。

例: s = scatterhistogram(__,'NumBins',20)

例: s.NumBins = [10; 15]

ヒストグラムの表示スタイル。次のオプションのいずれかとして指定します。

表示スタイル説明
'stairs'バーを塗りつぶさずにヒストグラムの外枠を示す階段状プロットを表示します。
'bar'ヒストグラムの棒グラフを表示します。
'smooth'カーネル密度推定を使用して生成された滑らかなプロットを表示します。このオプションには Statistics and Machine Learning Toolbox のライセンスが必要です。

scatterhistogram は、ヒストグラムを生成するために 'pdf' タイプの正規化を使用します。詳細については、histogram の名前と値のペアの引数 'Normalization' を参照してください。

例: s = scatterhistogram(__,'HistogramDisplayStyle','smooth')

例: s.HistogramDisplayStyle = 'bar'

ヒストグラムのライン幅。正のスカラーまたはポイント単位の正のベクトルとして指定します。既定では、scatterhistogram0.5 のライン幅をヒストグラムの各プロット ラインに割り当てます。

グループの合計数が指定されたライン幅の数を超えると、scatterhistogram は指定されたライン幅を先頭から順番に繰り返し使用します。

例: s = scatterhistogram(__,'LineWidth',0.75)

例: s.LineWidth = [0.5 0.75 0.5]

各散布図グループのマーカー記号。次のいずれかの形式で指定します。

  • マーカー スタイルを示す文字ベクトル

  • 1 つ以上のマーカー スタイルを示す string 配列または文字ベクトルの cell 配列

次のマーカー オプションから選択します。

説明
'o'
'+'プラス記号
'*'アスタリスク
'.'
'x'十字
'_'水平線
'|'垂直線
'square' または 's'正方形
'diamond' または 'd'菱形
'^'上向き三角形
'v'下向き三角形
'>'右向き三角形
'<'左向き三角形
'pentagram' または 'p'星形五角形
'hexagram' または 'h'星形六角形
'none'マーカーなし

既定では、scatterhistogram は、マーカー記号 'o' を散布図内の各グループに割り当てます。グループの合計数が指定された記号の数を超えると、scatterhistogram は指定された記号を先頭から順番に繰り返し使用します。

例: s = scatterhistogram(__,'MarkerStyle','x')

例: s.MarkerStyle = {'x','o'}

散布図の場所。次のいずれかのオプションとして指定します。

場所説明
'SouthWest'散布図の右上にヒストグラムをプロットします。
'SouthEast'散布図の左上にヒストグラムをプロットします。
'NorthEast'散布図の左下にヒストグラムをプロットします。
'NorthWest'散布図の右下にヒストグラムをプロットします。

例: s = scatterhistogram(__,'ScatterPlotLocation','NorthEast')

例: s.ScatterPlotLocation = 'SouthEast'

凡例の可視性の状態。'on' または 'off' で指定します。凡例を表示する場合は LegendVisible'on' に、凡例を非表示にする場合は 'off' に設定します。

GroupData が空 ([]) であるか、1 つのグループが含まれている場合、scatterhistogram は凡例を表示しません。そうでない場合、凡例が散布図または周辺ヒストグラムにオーバーラップしない限り、scatterhistogram は既定で凡例を表示します。

凡例では、scatterhistogram はグループ名を GroupData 内における初回出現順に表示します。

例: s = scatterhistogram(__,'LegendVisible','on')

例: s.LegendVisible = 'off'

出力引数

すべて折りたたむ

スタンドアロンの可視化である ScatterHistogramChart オブジェクト。作成後にオブジェクトを変更するには、s を使用します。プロパティの一覧については、ScatterHistogramChart のプロパティ を参照してください。

詳細

すべて折りたたむ

スタンドアロンの可視化

スタンドアロンの可視化は、他のチャートから独立して機能する特別な目的のために設計されたチャートです。plot および surf のような他のチャートとは異なり、スタンドアロンの可視化には事前構成済みの axes オブジェクトが組み込まれています。一部のカスタマイズは使用できません。スタンドアロンの可視化には次のような特徴もあります。

  • ライン、パッチ、または表面といった他のグラフィックス要素と組み合わせることはできません。したがって、hold コマンドはサポートされません。

  • 関数 gca はチャート オブジェクトを現在の座標軸として返すことができます。

  • axes オブジェクトを入力引数として受け入れる多くの MATLAB 関数にチャート オブジェクトを渡すことができます。たとえば、チャート オブジェクトを関数 title に渡すことができます。

ヒント

  • ScatterHistogramChart オブジェクトでデータを対話的に調べるには、次のオプションを使用します。これらのオプションの一部は、ライブ エディターでは使用できません。

    • ズーム/パン — スクロール ホイールまたは + ボタンと - ボタンを使用してズームします。散布図をクリックしてドラッグし、移動します。scatterhistogram は、現在の散布図の範囲内にあるデータに基づいて周辺ヒストグラムを更新します。

    • データヒント — 散布図または周辺ヒストグラムにカーソルを合わせると、データヒントが表示されます。

  • table から周辺ヒストグラムを伴う散布図を作成する場合、散布図のデータ ヒントをカスタマイズできます。

    • データ ヒントの行を追加または削除するには、散布図の任意の場所を右クリックして [データ ヒントの変更] をポイントします。次に、変数を選択または選択解除します。

    • 複数の行を追加または削除するには、プロット上で右クリックして [データ ヒントの変更] をポイントし、[詳細] を選択します。次に、[>>] をクリックして変数を追加するか、[<<] をクリックして変数を削除します。

R2018b で導入