このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
histogram2
二変量ヒストグラム プロット

説明
二変量ヒストグラムは数値データ用の棒グラフの一種で、データを 2 次元のビンにグループ分けします。Histogram2
オブジェクトの作成後、プロパティ値を変更してヒストグラムの特性を変更できます。これは、ビンのプロパティをすばやく変えたり表示を変えたりするのに特に役立ちます。
作成
構文
説明
histogram2(
は、X,Y
)X
と Y
の二変量ヒストグラム プロットを作成します。関数 histogram2
は、一様な面積をもつビンを返す自動ビン化アルゴリズムを使用します。X
および Y
の要素の範囲をカバーし、分布の基本的な形状を明らかにするビンが選択されます。histogram2
は 3 次元の直方体バーとしてビンを表示し、各バーの高さはビンの要素数を示します。
histogram2(___,
は、前述の任意の構文を用いて、1 つ以上の Name,Value
)Name,Value
のペアの引数を使用して追加オプションを指定します。たとえば、'BinWidth'
と 2 要素ベクトルを指定して各次元のビンの幅を調整したり、'Normalization'
と有効なオプション ('count'
、'probability'
、'countdensity'
、'pdf'
、'cumcount'
または 'cdf'
) を指定して別の種類の正規化を使用することができます。プロパティの一覧については、Histogram2 のプロパティ を参照してください。
histogram2(
は、現在の座標軸 (ax
,___)gca
) の代わりに ax
によって指定される座標軸にプロットします。オプションの ax
は、前述の構文のすべての入力引数の組み合わせより前に指定できます。
は h
= histogram2(___)Histogram2
オブジェクトを返します。これは、二変量ヒストグラムのプロパティの検査や調整に使用します。プロパティの一覧については、Histogram2 のプロパティ を参照してください。
入力引数
X,Y
— ビンに分散させるデータ (個別の引数として指定)
ベクトル | 行列 | 多次元配列
ビンに分散させるデータ。ベクトル、行列または多次元配列の個別の引数として指定します。X
と Y
は同じサイズでなければなりません。X
および Y
がベクトルでない場合、histogram2
はこれらをそれぞれ単一の列ベクトル X(:)
および Y(:)
として扱い、1 つのヒストグラムをプロットします。
X
および Y
の対応する要素は、2 次元データ点の x 座標および y 座標 [X(k),Y(k)]
を指定します。X
と Y
は異なるデータ型にすることができますが、histogram2
はこれらの入力を主要なデータ型の 1 つの N
行 2
列の行列に連結します。
histogram2
はすべての NaN
値を無視します。同様にビンのエッジとして明示的に Inf
または -Inf
を指定しない限り、histogram2
は Inf
値および -Inf
値を無視します。通常、NaN
値、Inf
値、-Inf
値はプロットされませんが、'probability'
などのデータ要素の総数を含む正規化計算に引き続き含まれます。
メモ
X
または Y
に含まれる int64
型または uint64
型の整数が flintmax
より大きい場合、ヒストグラムのビンのエッジを明示的に指定することが推奨されます。histogram2
は自動的に、倍精度を使用して入力データをビンに入れるので、flintmax
を超える数値では整数精度が低下します。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
nbins
— 各次元のビンの数
スカラー | ベクトル
各次元のビンの数。正のスカラー整数、あるいは正の整数の 2 要素ベクトルとして指定します。nbins
を指定しない場合、histogram2
は X
と Y
の値に基づいて使用するビンの数を自動的に計算します。
nbins
がスカラーの場合、histogram2
は各次元でその数のビンを使用します。nbins
がベクトルの場合、nbins(1)
は x 次元のビンの数、nbins(2)
は y 次元のビンの数を指定します。
例: histogram2(X,Y,20)
は各次元で 20 個のビンを使用します。
例: histogram2(X,Y,[10 20])
は x
次元で 10 個のビン、y
次元で 20 個のビンを使用します。
Xedges
— x 次元のビンのエッジ
ベクトル
x 次元のビンのエッジ。ベクトルとして指定します。Xedges(1)
は x 次元の最初のビンの最初のエッジであり、Xedges(end)
は最後のビンの外側のエッジです。
Xedges(i)
≤ X(k)
< Xedges(i+1)
かつ Yedges(j)
≤ Y(k)
< Yedges(j+1)
の場合、値 [X(k),Y(k)]
は (i,j)
番目のビンに含まれます。各次元の最後のビンは、最後 (外側) のエッジも含みます。たとえば、[X(k),Y(k)]
は、Xedges(end-1)
≤ X(k)
≤ Xedges(end)
かつ Yedges(i)
≤ Y(k)
< Yedges(i+1)
の場合に最後の行の i
番目のビンに分類されます。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
Yedges
— y 次元のビンのエッジ
ベクトル
y 次元のビンのエッジ。ベクトルとして指定します。Yedges(1)
は y 次元の最初のビンの最初のエッジであり、Yedges(end)
は最後のビンの外側のエッジです。
Xedges(i)
≤ X(k)
< Xedges(i+1)
かつ Yedges(j)
≤ Y(k)
< Yedges(j+1)
の場合、値 [X(k),Y(k)]
は (i,j)
番目のビンに含まれます。各次元の最後のビンは、最後 (外側) のエッジも含みます。たとえば、[X(k),Y(k)]
は、Xedges(end-1)
≤ X(k)
≤ Xedges(end)
かつ Yedges(i)
≤ Y(k)
< Yedges(i+1)
の場合に最後の行の i
番目のビンに分類されます。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
counts
— ビンのカウント数
行列
ビンのカウント数。行列として指定します。ビンのカウント数の計算が個別に実行され、histogram2
でデータのビン化を行わない場合、この入力を使用してビンのカウント数を histogram2
に渡します。
counts
は各ビンのカウント数を指定できるように、サイズ [length(XBinEdges)-1 length(YBinEdges)-1]
の行列でなければなりません。
例: histogram2('XBinEdges',-1:1,'YBinEdges',-2:2,'BinCounts',[1 2 3 4; 5 6 7 8])
ax
— axes オブジェクト
オブジェクト
axes オブジェクト。座標軸を指定しない場合、関数 histogram2
は現在の座標軸 (gca
) を使用します。
引数のオプションのペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name
を引用符で囲みます。
例: histogram2(X,Y,'BinWidth',[5 10])
ここでは、プロパティの一部だけを紹介しています。完全な一覧については、Histogram2 のプロパティ を参照してください。
BinMethod
— ビン化アルゴリズム
'auto'
(既定値) | 'scott'
| 'fd'
| 'integers'
ビン化アルゴリズム。次の表のいずれかの値を指定します。
値 | 説明 |
---|---|
'auto' | 既定値の |
'scott' | スコットの法則はデータが正規分布に近い場合に最適です。この規則は他の多くの分布にも適しています。ビンのサイズとして |
'fd' | Freedman-Diaconis の法則は、データの外れ値の影響を受けにくく、裾が大きい分布をもつデータにより適しています。ビンのサイズとして |
'integers' | 整数ルールは整数のペアを中心にしてビンを作成するので、整数データの場合に便利です。各次元に幅が 1 のビンを使用し、ビンのエッジを整数の中間に設定します。 誤って多すぎるビンを作成しないように、このルールを使用して作成するビンを 1024 (210) 個以下に制限できます。いずれかの次元のデータの範囲が 1024 よりも大きい場合、整数ルールは代わりに幅の広いビンを使用します。 |
histogram2
は、これらの式を厳密に使用してビンの数を選択するとは限りません。場合によっては、ビンのエッジが "きりのよい" 数字になるように、ビンの数がわずかに調整されることがあります。
メモ
NumBins
、XBinEdges
、YBinEdges
、BinWidth
、XBinLimits
、または YBinLimits
プロパティを設定した場合、BinMethod
プロパティは 'manual'
に設定されます。
例: histogram2(X,Y,'BinMethod','integers')
は、整数のペアを中心とするビンをもつ二変量ヒストグラムを作成します。
BinWidth
— 各次元のビンの幅
ベクトル
各次元のビンの幅。正の整数の 2 要素ベクトル [xWidth yWidth]
として指定します。
BinWidth
を指定した場合、histogram2
は各次元で最大 1024 (210) 個のビンを使用できます。指定したビンの幅によってさらに多くのビンが必要となる場合、histogram2
は最大のビン数に対応するより大きなビンの幅を使用します。
例: histogram2(X,Y,'BinWidth',[5 10])
は x
次元のサイズが 5
、y
次元のサイズが 10
のビンを使用します。
DisplayStyle
— ヒストグラムの表示スタイル
'bar3'
(既定値) | 'tile'
ヒストグラムの表示スタイル。'bar3'
または 'tile'
で指定します。'tile'
を指定すると、ビンの値を示す色をもつタイルの方形配列としてヒストグラムが表示されます。
既定値 'bar3'
では、ヒストグラムが 3 次元バーで表示されます。
例: histogram2(X,Y,'DisplayStyle','tile')
はヒストグラムをタイルの方形配列としてプロットします。
EdgeAlpha
— ヒストグラムのバーのエッジの透明度
1
(既定値) | 0
以上 1
以下のスカラー値
ヒストグラムのバーのエッジの透明度。0
以上 1
以下のスカラー値として指定します。1
の値は完全な不透明を、0
の値は完全な透明 (非表示) を意味します。
例: histogram2(X,Y,'EdgeAlpha',0.5)
はバーのエッジが半透明の二変量ヒストグラム プロットを作成します。
EdgeColor
— ヒストグラムのエッジの色
[0.15 0.15 0.15]
(既定値) | 'none'
| 'auto'
| RGB 3 成分 | 16 進数カラー コード | 色名
ヒストグラムのエッジの色。次の値の 1 つとして指定します。
'none'
— エッジは描画されません。'auto'
— 各エッジの色が自動的に選択されます。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"
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"
例: histogram2(X,Y,'EdgeColor','r')
はバーのエッジが赤の 3 次元ヒストグラム プロットを作成します。
FaceAlpha
— ヒストグラムのバーの透明度
1
(既定値) | 0
以上 1
以下のスカラー値
ヒストグラムのバーの透明度。0
以上 1
以下のスカラー値として指定します。histogram2
は同じ透明度をヒストグラムのすべてのバーで使用します。1
の値は完全な不透明を、0
の値は完全な透明 (非表示) を意味します。
例: histogram2(X,Y,'FaceAlpha',0.5)
は半透明のバーをもつ二変量ヒストグラム プロットを作成します。
FaceColor
— ヒストグラムのバーの色
'auto'
(既定値) | 'flat'
| 'none'
| RGB 3 成分 | 16 進数カラー コード | 色名
ヒストグラムのバーの色。次の値の 1 つとして指定します。
'none'
— バーは塗りつぶされません。'flat'
— バーの色が高さによって変化します。バーの高さが異なると、異なる色になります。色は Figure または座標軸のカラーマップから選択されます。'auto'
— バーの色が自動的に選択されます (既定値)。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"
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"
DisplayStyle
を 'stairs'
に指定した場合、histogram2
は FaceColor
プロパティを使用しません。
例: histogram2(X,Y,'FaceColor','g')
はバーが緑色の 3 次元ヒストグラム プロットを作成します。
FaceLighting
— ヒストグラムのバーに対する照明効果
'lit'
(既定値) | 'flat'
| 'none'
ヒストグラムのバーに対する照明効果。次の表のいずれかの値として指定します。
値 | 説明 |
---|---|
'lit' | 疑似照明効果でヒストグラムのバーが表示されます。バーの側面には上面よりも暗い色を使用します。バーは座標軸内の他の光源の影響を受けません。 これは、 |
'flat' | ヒストグラムのバーには自動的に照明が適用されません。他の light オブジェクトが存在する場合、照明効果はバーの面で一様になります。 |
'none' | ヒストグラムのバーには自動的に照明が適用されず、ライトはヒストグラムのバーに影響しません。
|
例: histogram2(X,Y,'FaceLighting','none')
はヒストグラムのバーの照明をオフにします。
LineStyle
— ライン スタイル
"-"
(既定値) | "--"
| ":"
| "-."
| "none"
ライン スタイル。次の表にリストされたオプションのいずれかとして指定します。
ライン スタイル | 説明 | 結果として得られる線 |
---|---|---|
"-" | 実線 |
|
"--" | 破線 |
|
":" | 点線 |
|
"-." | 一点鎖線 |
|
"none" | ラインなし | ラインなし |
LineWidth
— バーの外枠の幅
0.5
(既定値) | 正の値
バーの外枠の幅。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。
例: 1.5
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Normalization
— 正規化のタイプ
'count'
(既定値) | 'probability'
| 'countdensity'
| 'pdf'
| 'cumcount'
| 'cdf'
正規化のタイプ。次の表のいずれかの値を指定します。各ビン i
に対して次のようになります。
はビンの値です。
はビン内の要素数です。
は各ビンの面積で、ビンの幅 x と y を使用して計算されます。
は入力データ内の要素数です。データに
NaN
値が含まれる場合、または一部のデータがビンの範囲外にある場合、この値はビン化されたデータより大きくなることがあります。
値 | ビンの値 | メモ |
---|---|---|
'count' (既定) |
|
|
'countdensity' |
|
|
'cumcount' |
|
|
'probability' |
|
|
'pdf' |
|
|
'cdf' |
|
|
例: histogram2(X,Y,'Normalization','pdf')
は X
および Y
の確率密度関数の推定値をプロットします。
ShowEmptyBins
— 空のビンの表示トグル
'off'
(既定値) | 'on'
空のビンの表示トグル。'off'
または 'on'
として指定します。既定値は 'off'
です。
例: histogram2(X,Y,'ShowEmptyBins','on')
は空のビンの表示をオンにします。
XBinLimits
— x 次元のビンの範囲
ベクトル
x 次元のビンの範囲。2 要素ベクトル [xbmin,xbmax]
として指定します。このベクトルは、x 次元の最初と最後のビンのエッジを示します。
histogram2
は、Data(Data(:,1)>=xbmin & Data(:,1)<=xbmax)
のビンの範囲に含まれるデータのみをプロットします。
XBinLimitsMode
— x 次元のビンの範囲の選択モード
'auto'
(既定値) | 'manual'
x 次元のビンの範囲の選択モード。'auto'
または 'manual'
として指定します。既定値は 'auto'
であり、ビンの範囲は x 軸方向のデータに合わせて自動的に調整されます。
XBinLimits
または XBinEdges
を明示的に指定した場合、XBinLimitsMode
は自動的に 'manual'
に設定されます。この場合に XBinLimitsMode
を 'auto'
に指定すると、ビンの範囲はデータに合わせて再びスケーリングされます。
YBinLimits
— y 次元のビンの範囲
ベクトル
y 次元のビンの範囲。2 要素ベクトル [ybmin,ybmax]
として指定します。このベクトルは、y 次元の最初と最後のビンのエッジを示します。
histogram2
は、Data(Data(:,2)>=ybmin & Data(:,2)<=ybmax)
のビンの範囲に含まれるデータのみをプロットします。
YBinLimitsMode
— y 次元のビンの範囲の選択モード
'auto'
(既定値) | 'manual'
y 次元のビンの範囲の選択モード。'auto'
または 'manual'
として指定します。既定値は 'auto'
であり、ビンの範囲は y 軸方向のデータに合わせて自動的に調整されます。
YBinLimits
または YBinEdges
を明示的に指定した場合、YBinLimitsMode
は自動的に 'manual'
に設定されます。この場合に YBinLimitsMode
を 'auto'
に指定すると、ビンの範囲はデータに合わせて再びスケーリングされます。
出力引数
h
— 二変量ヒストグラム
オブジェクト
二変量ヒストグラム。オブジェクトとして返されます。詳細については、Histogram2 のプロパティ を参照してください。
プロパティ
Histogram2 のプロパティ | Histogram2 の外観と動作 |
例
ベクトルのヒストグラム
10,000 組の乱数ペアを生成し、二変量ヒストグラムを作成します。関数 histogram2
は、x
および y
の値の範囲をカバーし、基となる分布の形状を示す適切なビンの数を自動的に選択します。
x = randn(10000,1); y = randn(10000,1); h = histogram2(x,y)
h = Histogram2 with properties: Data: [10000x2 double] Values: [25x28 double] NumBins: [25 28] XBinEdges: [-3.9000 -3.6000 -3.3000 -3 -2.7000 -2.4000 -2.1000 -1.8000 -1.5000 -1.2000 -0.9000 -0.6000 -0.3000 0 0.3000 0.6000 0.9000 1.2000 1.5000 1.8000 2.1000 2.4000 2.7000 3.0000 3.3000 3.6000] YBinEdges: [-4.2000 -3.9000 -3.6000 -3.3000 -3.0000 -2.7000 -2.4000 -2.1000 -1.8000 -1.5000 -1.2000 -0.9000 -0.6000 -0.3000 0 0.3000 0.6000 0.9000 1.2000 1.5000 1.8000 2.1000 2.4000 2.7000 3 3.3000 3.6000 3.9000 4.2000] BinWidth: [0.3000 0.3000] Normalization: 'count' FaceColor: 'auto' EdgeColor: [0.1500 0.1500 0.1500] Show all properties
xlabel('x') ylabel('y')
関数 histogram2
の出力引数を指定すると、histogram2 オブジェクトが返されます。このオブジェクトを使用してビンの数やビンの幅などのヒストグラムのプロパティを調べることができます。
ヒストグラムの各次元のビンの数を調べます。
nXnY = h.NumBins
nXnY = 1×2
25 28
ヒストグラムのビン数の指定
各次元に 5 個のビンを使用して、1,000 組の乱数ペアを 25 個の等間隔のビンに並べ替えた二変量ヒストグラムをプロットします。
x = randn(1000,1); y = randn(1000,1); nbins = 5; h = histogram2(x,y,nbins)
h = Histogram2 with properties: Data: [1000x2 double] Values: [5x5 double] NumBins: [5 5] XBinEdges: [-4 -2.4000 -0.8000 0.8000 2.4000 4] YBinEdges: [-4 -2.4000 -0.8000 0.8000 2.4000 4] BinWidth: [1.6000 1.6000] Normalization: 'count' FaceColor: 'auto' EdgeColor: [0.1500 0.1500 0.1500] Show all properties
得られたビンのカウント数を求めます。
counts = h.Values
counts = 5×5
0 2 3 1 0
2 40 124 47 4
1 119 341 109 10
1 32 117 33 1
0 4 8 1 0
ヒストグラムのビンの数の調整
1,000 組の乱数ペアを生成し、二変量ヒストグラムを作成します。
x = randn(1000,1); y = randn(1000,1); h = histogram2(x,y)
h = Histogram2 with properties: Data: [1000x2 double] Values: [15x15 double] NumBins: [15 15] XBinEdges: [-3.5000 -3 -2.5000 -2 -1.5000 -1 -0.5000 0 0.5000 1 1.5000 2 2.5000 3 3.5000 4] YBinEdges: [-3.5000 -3 -2.5000 -2 -1.5000 -1 -0.5000 0 0.5000 1 1.5000 2 2.5000 3 3.5000 4] BinWidth: [0.5000 0.5000] Normalization: 'count' FaceColor: 'auto' EdgeColor: [0.1500 0.1500 0.1500] Show all properties
関数 morebins
を使用して x 次元のビンの数を大まかに調整します。
nbins = morebins(h,'x'); nbins = morebins(h,'x')
nbins = 1×2
19 15
関数 fewerbins
を使用して y 次元のビンの数を調整します。
nbins = fewerbins(h,'y'); nbins = fewerbins(h,'y')
nbins = 1×2
19 11
ビンの数を明示的に設定して、ビンの数を細かいレベルで調整します。
h.NumBins = [20 10];
ヒストグラムのバーを高さ別に色分け
1,000 組の正規分布乱数と、各次元に 12 個のビンを使用して、二変量ヒストグラムを作成します。FaceColor
を 'flat'
に指定して、ヒストグラムのバーを高さ別に色分けします。
h = histogram2(randn(1000,1),randn(1000,1),[12 12],'FaceColor','flat'); colorbar
ヒストグラムのタイル表示
乱数データを生成し、二変量ヒストグラムのタイル配置をプロットします。ShowEmptyBins
を 'on'
に指定して、空のビンを表示します。
x = 2*randn(1000,1)+2; y = 5*randn(1000,1)+3; h = histogram2(x,y,'DisplayStyle','tile','ShowEmptyBins','on');
ヒストグラムのビン エッジの指定
1,000 組の乱数ペアを生成し、二変量ヒストグラムを作成します。2 つのベクトルを使用してビンのエッジを指定し、ヒストグラムの境界にあるビンの幅を無限大にして、 を満たさない外れ値をすべて取得します。
x = randn(1000,1); y = randn(1000,1); Xedges = [-Inf -2:0.4:2 Inf]; Yedges = [-Inf -2:0.4:2 Inf]; h = histogram2(x,y,Xedges,Yedges)
h = Histogram2 with properties: Data: [1000x2 double] Values: [12x12 double] NumBins: [12 12] XBinEdges: [-Inf -2 -1.6000 -1.2000 -0.8000 -0.4000 0 0.4000 0.8000 1.2000 1.6000 2 Inf] YBinEdges: [-Inf -2 -1.6000 -1.2000 -0.8000 -0.4000 0 0.4000 0.8000 1.2000 1.6000 2 Inf] BinWidth: 'nonuniform' Normalization: 'count' FaceColor: 'auto' EdgeColor: [0.1500 0.1500 0.1500] Show all properties
ビンのエッジが無限大の場合、histogram2
は外れ値の各ビンをその隣のビンの 2 倍の幅をもつように (ヒストグラムの境界に沿って) 表示します。
Normalization
プロパティを 'countdensity'
に指定して、外れ値を含むビンを削除します。これで、各ビンの "ボリューム" は、その間隔での観測値の頻度を表します。
h.Normalization = 'countdensity';
正規化したヒストグラム
1,000 組の乱数ペアを生成し、'probability'
の正規化を使用して二変量ヒストグラムを作成します。
x = randn(1000,1); y = randn(1000,1); h = histogram2(x,y,'Normalization','probability')
h = Histogram2 with properties: Data: [1000x2 double] Values: [15x15 double] NumBins: [15 15] XBinEdges: [-3.5000 -3 -2.5000 -2 -1.5000 -1 -0.5000 0 0.5000 1 1.5000 2 2.5000 3 3.5000 4] YBinEdges: [-3.5000 -3 -2.5000 -2 -1.5000 -1 -0.5000 0 0.5000 1 1.5000 2 2.5000 3 3.5000 4] BinWidth: [0.5000 0.5000] Normalization: 'probability' FaceColor: 'auto' EdgeColor: [0.1500 0.1500 0.1500] Show all properties
バーの高さの合計を計算します。この正規化では、それぞれのバーの高さはそのビンの区間内の観測値が選択される確率に等しく、すべてのバーの高さの合計は 1 になります。
S = sum(h.Values(:))
S = 1
ヒストグラムのプロパティの調整
1,000 組の乱数ペアを生成し、二変量ヒストグラムを作成します。プロット全体を再作成せずにヒストグラムのプロパティを調整するために histogram オブジェクトを返します。
x = randn(1000,1); y = randn(1000,1); h = histogram2(x,y)
h = Histogram2 with properties: Data: [1000x2 double] Values: [15x15 double] NumBins: [15 15] XBinEdges: [-3.5000 -3 -2.5000 -2 -1.5000 -1 -0.5000 0 0.5000 1 1.5000 2 2.5000 3 3.5000 4] YBinEdges: [-3.5000 -3 -2.5000 -2 -1.5000 -1 -0.5000 0 0.5000 1 1.5000 2 2.5000 3 3.5000 4] BinWidth: [0.5000 0.5000] Normalization: 'count' FaceColor: 'auto' EdgeColor: [0.1500 0.1500 0.1500] Show all properties
ヒストグラムのバーを高さ別に色分けします。
h.FaceColor = 'flat';
各方向のビンの数を変更します。
h.NumBins = [10 25];
ヒストグラムをタイル プロットとして表示します。
h.DisplayStyle = 'tile';
view(2)
histogram2 オブジェクトの保存と読み込み
関数 savefig
を使用して histogram2
の Figure を保存します。
histogram2(randn(100,1),randn(100,1)); savefig('histogram2.fig'); close gcf
openfig
を使用してヒストグラムの Figure を MATLAB® に再度読み込みます。openfig
は Figure のハンドル h
も返します。
h = openfig('histogram2.fig');
関数 findobj
を使用して Figure のハンドルから正しいオブジェクト ハンドルを特定します。これによりこの Figure の生成に使用した元の histogram オブジェクトを引き続き操作できるようになります。
y = findobj(h,'type','histogram2')
y = Histogram2 with properties: Data: [100x2 double] Values: [7x6 double] NumBins: [7 6] XBinEdges: [-3 -2 -1 0 1 2 3 4] YBinEdges: [-3 -2 -1 0 1 2 3] BinWidth: [1 1] Normalization: 'count' FaceColor: 'auto' EdgeColor: [0.1500 0.1500 0.1500] Show all properties
ヒント
histogram2
を使用して作成したヒストグラム プロットのプロット編集モードには、Figure ウィンドウ内での対話型操作を可能にするコンテキスト メニューがあります。たとえば、コンテキスト メニューを使用して、ビン数の変更、複数のヒストグラムの位置揃えまたは表示順序の変更を対話的に行うことができます。
拡張機能
tall 配列
メモリの許容量を超えるような多数の行を含む配列を計算します。
この関数は tall 配列を制限付きでサポートしています。
一部の入力オプションはサポートされていません。使用可能なオプションは次のとおりです。
'BinWidth'
'XBinLimits'
'YBinLimits'
'Normalization'
'DisplayStyle'
'BinMethod'
—'auto'
ビン メソッドと'scott'
ビン メソッドは同じです。'fd'
ビン メソッドはサポートされていません。'EdgeAlpha'
'EdgeColor'
'FaceAlpha'
'FaceColor'
'LineStyle'
'LineWidth'
'Orientation'
さらに、バーの最大数には上限があります。既定の最大値は 100 です。
morebins
メソッドとfewerbins
メソッドはサポートされていません。ビンの再計算が必要な histogram オブジェクトのプロパティの編集はサポートされていません。
詳細については、メモリに収まらないデータの tall 配列を参照してください。
バージョン履歴
R2015b で導入
参考
bar3
| discretize
| fewerbins
| morebins
| histcounts2
| histcounts
| Histogram2 のプロパティ
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)