ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

hist3

二変量ヒストグラム プロット

構文

hist3(X)
hist3(X,'Nbins',nbins)
hist3(X,'Ctrs',ctrs)
hist3(X,'Edges',edges)
hist3(___,Name,Value)
hist3(ax,___)
N = hist3(___)
[N,c] = hist3(___)

説明

hist3(X) は、10 行 10 列の等間隔のビンを使用して、X(:,1)X(:,2) の二変量ヒストグラム プロットを作成します。関数 hist3 は 3 次元の長方形棒としてビンを表示します。各棒の高さはビンの要素数を示します。

hist3(X,'Nbins',nbins) は、ヒストグラムの各次元におけるビンの個数を指定します。この構文は、hist3(X,nbins) と等価です。

hist3(X,'Ctrs',ctrs) は、ヒストグラムの各次元におけるビンの中心を指定します。この構文は、hist3(X,ctrs) と等価です。

hist3(X,'Edges',edges) は、各次元におけるビンのエッジを指定します。

hist3(___,Name,Value) では、前の構文の入力引数に加えて 1 つ以上の名前と値のペアの引数を使用して、グラフィック プロパティを指定します。たとえば、'FaceAlpha',0.5 は半透明のヒストグラムを作成します。プロパティの一覧については、Surface のプロパティを参照してください。

hist3(ax,___) は、現在の座標軸 (gca) ではなく ax によって指定される座標軸にプロットします。ax オプションは、上記の構文における入力引数の組み合わせより前に指定できます。

N = hist3(___) は、各ビンに分類される X 内の要素数を返します。この構文では、ヒストグラムは作成されません。

[N,c] = hist3(___) は、ビンの中心も返します。この構文では、ヒストグラムは作成されません。

すべて折りたたむ

標本データを読み込みます。

load carbig

既定の設定で二変量ヒストグラムを作成します。

X = [MPG,Weight];
hist3(X)
xlabel('MPG')
ylabel('Weight')

ビンの中心によって指定されるビンに対して二変量ヒストグラムを作成し、各ビンの要素数をカウントします。

標本データを読み込みます。

load carbig

二変量ヒストグラムを作成します。2 要素の cell 配列を使用して、ヒストグラム ビンの中心を指定します。

X = [MPG,Weight];
hist3(X,'Ctrs',{0:10:50 2000:500:5000})
xlabel('MPG')
ylabel('Weight')

各ビンの要素数をカウントします。

N = hist3(X,'Ctrs',{0:10:50 2000:500:5000})
N = 6×7

     0     0     0     0     0     0     0
     0     0     2     3    16    26     6
     6    34    50    49    27    10     0
    70    49    11     3     0     0     0
    29     4     2     0     0     0     0
     1     0     0     0     0     0     0

標本データを読み込みます。

load carbig

二変量ヒストグラムを作成します。観測値の頻度を表す高さによってヒストグラム バーの色を設定するように、グラフィック プロパティを指定します。

X = [MPG,Weight];
hist3(X,'CDataMode','auto','FaceColor','interp')
xlabel('MPG')
ylabel('Weight')

標本データを読み込みます。

load carbig

タイル表示された二変量ヒストグラムを作成します。観測値の頻度によってヒストグラム バーの上面の色を設定するように、グラフィック プロパティを指定します。表示を 2 次元に変更します。

X = [MPG,Weight];
hist3(X,'CdataMode','auto')
xlabel('MPG')
ylabel('Weight')
colorbar
view(2)

二変量ヒストグラムを作成し、ヒストグラムの surface オブジェクトのハンドルを使用してグラフィック プロパティを調整します。

標本データを読み込みます。

load carbig

各次元に 7 つのビンがある二変量ヒストグラムを作成します。

X = [MPG,Weight];
hist3(X,'Nbins',[7 7])
xlabel('MPG')
ylabel('Weight')

関数 hist3 は二変量ヒストグラムを作成します。これは表面プロットの一種です。surface オブジェクトのハンドルを取得し、表面の透明度を調整します。

s = findobj(gca,'Type','Surface');
s.FaceAlpha = 0.65;

二変量ヒストグラムを作成し、強度の 2 次元射影表示をヒストグラムに追加します。

seamount データセットを読み込みます (seamount は海面下の山です)。このデータセットは、一連の経度 (x) および緯度 (y) および、これらの座標で測定された対応する seamount の高さ (z) から構成されています。この例では、xy を使用して二変量ヒストグラムを描画します。

load seamount

二変量ヒストグラムを描画します。

hist3([x,y])
xlabel('Longitude')
ylabel('Latitude')
hold on

各ビンの要素数をカウントします。

N = hist3([x,y]);

pcolorを使用して、強度の 2 次元射影表示を描画するためのグリッドを生成します。

N_pcolor = N';
N_pcolor(size(N_pcolor,1)+1,size(N_pcolor,2)+1) = 0;
xl = linspace(min(x),max(x),size(N_pcolor,2)); % Columns of N_pcolor
yl = linspace(min(y),max(y),size(N_pcolor,1)); % Rows of N_pcolor

pcolor を使用して強度マップを描画します。ヒストグラムと強度マップが同時に表示されるように、強度マップの z レベルを設定します。

h = pcolor(xl,yl,N_pcolor);
colormap('hot') % Change color scheme 
colorbar % Display colorbar
h.ZData = -max(N_pcolor(:))*ones(size(N_pcolor));
ax = gca;
ax.ZTick(ax.ZTick < 0) = [];
title('Seamount Location Histogram and Intensity Map');

入力引数

すべて折りたたむ

ビン間で分配するデータ。m 行 2 列の数値行列を指定します。m はデータ点の個数です。X(:,1) および X(:,2) の対応する要素では、2 次元データ点の x 座標と y 座標を指定します。

hist3 は、すべての NaN 値を無視します。同様に、入力引数 edges を使用して Inf または –Inf を明示的にビンのエッジとして指定しない限り、hist3 は値 Inf および –Inf を無視します。

データ型: single | double

各次元のビンの個数。正の整数の 2 要素ベクトルを指定します。nbins(1) では 1 番目の次元のビンの個数を、nbins(2) では 2 番目の次元のビンの個数を指定します。

例: [10 20]

データ型: single | double

各次元のビンの中心。単調非減少の値が含まれている数値ベクトルによる 2 要素の cell 配列を指定します。ctrs{1}ctrs{2} はそれぞれ、1 番目の次元および 2 番目の次元におけるビンの中心の位置です。

hist3 は、グリッドの範囲外に分類される X の行を、グリッドの外側のエッジに沿ったビンに割り当てます。

例: {0:10:100 0:50:500}

データ型: cell

各次元のビンのエッジ。単調非減少の値が含まれている数値ベクトルによる 2 要素の cell 配列を指定します。edges{1}edges{2} はそれぞれ、1 番目の次元および 2 番目の次元におけるビンのエッジの位置です。

edges{1}(i) ≤ X(k,1) < edges{1}(i+1) かつ edges{2}(j) ≤ X(k,2) < edges{2}(j+1) である場合、値 X(k,:)(i,j) 番目のビンに含まれます。

各次元の最後のビンには、最後の (外側の) エッジも含まれます。たとえば、edges{1}(I–1) ≤ X(k,1) ≤ edges{1}(I) かつ edges{2}(j) ≤ X(k,2) < edges{2}(j+1) である場合、X(k,:)(I,j) 番目のビンに分類されます。Iedges{1} の長さです。また、edges{1}(i) ≤ X(k,1) < edges{1}(i+1) かつ edges{2}(J–1) ≤ X(k,2) ≤ edges{2}(J) である場合、X(k,:)(i,J) 番目のビンに分類されます。Jedges{2} の長さです。

hist3 は、グリッドの範囲外に分類される X の行をカウントしません。edges の中に、–InfInf を使って、すべての NaN でない値を含ませることができます。

例: {0:10:100 0:50:500}

データ型: cell

ターゲットの座標軸。axes オブジェクトを指定します。Axes オブジェクトが指定されなかった場合、関数 hist3 は現在の座標軸 (gca) を使用します。詳細は、Axes のプロパティを参照してください。

名前と値のペアの引数

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

例: hist3(X,'FaceColor','interp','CDataMode','auto') は、バーの高さに従ってヒストグラム バーに色付けします。

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

CData (頂点の色) の選択モード。'CDataMode' と次のいずれかの値から構成されるコンマ区切りのペアとして指定します。

  • 'manual'CData プロパティで手動指定された値を使用します。CData の既定の色はライト スチール ブルーで、[0.75 0.85 0.95] という RGB 3 成分値に対応します。

  • 'auto'ZData の値を使用して色を設定します。ZData には、各バーの 8 つの頂点の z 座標データが含まれています。

例: 'CDataMode','auto'

エッジ ラインの色。'EdgeColor' と次のいずれかの値から構成されるコンマ区切りのペアとして指定します。

  • 'none' — エッジを描画しません。

  • 'flat'CData プロパティの値に基づいて、異なる色を各エッジに使用します。

  • 'interp'CData プロパティの値に基づいて、内挿された色を各エッジに使用します。

  • RGB 3 成分または色の名前 — 指定された色をすべてのエッジに使用します。このオプションでは、CData プロパティの色の値は使用されません。

既定の色である [0 0 0] は黒のエッジに対応します。

RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 要素の行ベクトルです。強度は範囲 [0,1] に含まれていなければなりません。たとえば [0.4 0.6 0.7] のようになります。あるいは、一部の一般的な色を名前で指定できます。次の表は、色の完全名と省略名のオプション、および等価な RGB 3 成分の値の一覧です。

オプション説明等価な RGB 3 成分
'red' または 'r'[1 0 0]
'green' または 'g'[0 1 0]
'blue' または 'b'[0 0 1]
'yellow' または 'y'[1 1 0]
'magenta' または 'm'マゼンタ[1 0 1]
'cyan' または 'c'シアン[0 1 1]
'white' または 'w'[1 1 1]
'black' または 'k'[0 0 0]

例: 'EdgeColor','blue'

表面の透明度。'FaceAlpha' と次のいずれかの値から構成されるコンマ区切りのペアとして指定します。

  • 範囲 [0,1] のスカラー — すべての表面で同じ透明度を使用します。値 1 では完全な不透明に、値 0 では完全な透明になります。01 の間にある値では半透明になります。このオプションでは、AlphaData プロパティの透明度の値は使用されません。

  • 'flat'AlphaData プロパティの値に基づいて、異なる透明度を各表面に使用します。最初の頂点における透明度の値によって表面全体の透明度が決定されます。この値が適用されるのは、AlphaData プロパティを指定し、FaceColor プロパティを 'flat' に設定した場合だけです。

  • 'interp'AlphaData プロパティの値に基づいて、内挿された透明度を各表面に使用します。頂点で値を内挿することにより、透明度が各表面域で変化します。この値が適用されるのは、AlphaData プロパティを指定し、FaceColor プロパティを 'interp' に設定した場合だけです。

  • 'texturemap' — 表面に適合するように AlphaData のデータを変換します。

例: 'FaceAlpha',0.5

表面の色。'FaceColor' と次のいずれかの値から構成されるコンマ区切りのペアとして指定します。

  • 'flat'CData プロパティの値に基づき、各表面にそれぞれの色を使用します。

  • 'interp'CData プロパティの値に基づいて、内挿された色を各表面に使用します。

  • 'none' — 表面を描画しません。

  • 'texturemap' — 表面に適合するように CData の色データを変換します。

  • RGB 3 成分または色の名前 — 指定された色をすべての表面に使用します。このオプションでは、CData プロパティの色の値は使用されません。

RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 要素の行ベクトルです。強度は範囲 [0,1] に含まれていなければなりません。たとえば [0.4 0.6 0.7] のようになります。あるいは、一部の一般的な色を名前で指定できます。次の表は、色の完全名と省略名のオプション、および等価な RGB 3 成分の値の一覧です。

オプション説明等価な RGB 3 成分
'red' または 'r'[1 0 0]
'green' または 'g'[0 1 0]
'blue' または 'b'[0 0 1]
'yellow' または 'y'[1 1 0]
'magenta' または 'm'マゼンタ[1 0 1]
'cyan' または 'c'シアン[0 1 1]
'white' または 'w'[1 1 1]
'black' または 'k'[0 0 0]

例: 'FaceColor','interp'

ライン スタイル。'LineStyle' と次の表のいずれかのオプションから構成されるコンマ区切りのペアとして指定します。

ライン スタイル説明生成されるライン
'-'実線

'--'破線

':'点線

'-.'一点鎖線

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

例: 'LineStyle',':'

ラインの幅。'LineWidth' と正の値 (ポイント単位) から構成されるコンマ区切りのペアとして指定します。

例: 'LineWidth',0.75

データ型: single | double

出力引数

すべて折りたたむ

各ビンに分類される X の要素の個数。数値行列として返されます。

各次元のビンの中心。数値ベクトルによる 2 要素の cell 配列として返されます。c{1}c{2} はそれぞれ、1 番目の次元および 2 番目の次元におけるビンの中心の位置です。

ヒント

関数 hist3 は二変量ヒストグラムを作成します。これは表面プロットの一種です。表面のプロパティは、1 つ以上の名前と値のペアの引数を使用して指定できます。また、ヒストグラムの作成後に表面のプロパティの値を変更することにより、ヒストグラムの外観を変更できます。s = findobj(gca,'Type','Surface') を使用して surface オブジェクトのハンドルを取得し、その後、s を使用して表面のプロパティを変更します。例については、グラフィック プロパティの調整を参照してください。プロパティの一覧については、Surface のプロパティを参照してください。

代替機能

関数 histogram2 では、Histogram2 オブジェクトを使用して二変量ヒストグラムを作成できます。histogram2 の名前と値のペアの引数を使用することで、正規化の使用 ('Normalization')、各次元におけるビン幅の調整 ('BinWidth')、3 次元バーに代えてタイル方形配列によるヒストグラム表示 ('DisplayStyle') ができます。

R2006a より前に導入