binScatterPlot
tall 配列のビンの散布図
構文
説明
binScatterPlot( は、X,Y)X および Y のデータのビン化された散布図を作成します。関数 binScatterPlot は、X および Y の要素の範囲をカバーし、基となる分布の形状を明らかにするように選択された、一様な領域のビンを返す自動ビン化アルゴリズムを使用します。
binScatterPlot( では、前の構文のいずれかを使用し、1 つ以上の名前と値のペアの引数で追加オプションを指定します。たとえば、X,Y,Name,Value)'Color' と有効な色のオプションを指定してプロットのカラー テーマを変更したり、'Gamma' を正のスカラーで指定して詳細レベルを調整したりできます。
は、h = binScatterPlot(___)Histogram2 オブジェクトを返します。このオブジェクトを使用して、プロットのプロパティを調べます。
例
2 つの乱数データの tall ベクトルを作成します。このデータについて、ビン化された散布図を作成します。
tall 配列に対する計算を実行する場合、MATLAB® は並列プール (Parallel Computing Toolbox™ がある場合は既定) またはローカルの MATLAB セッションを使用します。Parallel Computing Toolbox がある場合にローカルの MATLAB セッションを使用して例を実行するには、関数 mapreducer を使用してグローバルな実行環境を変更します。
mapreducer(0) X = tall(randn(1e5,1)); Y = tall(randn(1e5,1)); binScatterPlot(X,Y)
Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 2: Completed in 0.53 sec - Pass 2 of 2: Completed in 0.14 sec Evaluation completed in 1.4 sec Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 0.12 sec Evaluation completed in 0.17 sec

生成される Figure には、イメージの詳細レベルを調整するためのスライダーが含まれています。
3 番目の入力引数としてスカラー値を指定して各次元で同じ個数のビンを使用するか、2 要素ベクトルを指定して各次元で異なる個数のビンを使用します。
tall 配列に対する計算を実行する場合、MATLAB® は並列プール (Parallel Computing Toolbox™ がある場合は既定) またはローカルの MATLAB セッションを使用します。Parallel Computing Toolbox がある場合にローカルの MATLAB セッションを使用して例を実行するには、関数 mapreducer を使用してグローバルな実行環境を変更します。
mapreducer(0)
各次元で 100 個のビンに分類された乱数データのビン化された散布図をプロットします。
X = tall(randn(1e5,1)); Y = tall(randn(1e5,1)); binScatterPlot(X,Y,100)
Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 0.2 sec Evaluation completed in 0.36 sec Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 0.1 sec Evaluation completed in 0.15 sec

x 次元では 20 個のビンを、y 次元では引き続き 100 個のビンを使用します。
binScatterPlot(X,Y,[20 100])
Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 0.081 sec Evaluation completed in 0.14 sec Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 0.07 sec Evaluation completed in 0.1 sec

ビンのエッジを指定して、乱数データのビン化された散布図をプロットします。外れ値を捕捉するため、ビンのエッジとして Inf と -Inf を使用します。
tall 配列に対する計算を実行する場合、MATLAB® は並列プール (Parallel Computing Toolbox™ がある場合は既定) またはローカルの MATLAB セッションを使用します。Parallel Computing Toolbox がある場合にローカルの MATLAB セッションを使用して例を実行するには、関数 mapreducer を使用してグローバルな実行環境を変更します。
mapreducer(0)
各次元で [-2 2] に 100 個のビンがある、ビン化された散布図を作成します。指定したビンのエッジの外部にあるデータは、プロットに含まれません。
X = tall(randn(1e5,1)); Y = tall(randn(1e5,1)); Xedges = linspace(-2,2); Yedges = linspace(-2,2); binScatterPlot(X,Y,Xedges,Yedges)
Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 0.64 sec Evaluation completed in 0.88 sec

プロットのエッジで無限大まで広がる粗いビンを使用して、外れ値を捕捉します。
Xedges = [-Inf linspace(-2,2) Inf]; Yedges = [-Inf linspace(-2,2) Inf]; binScatterPlot(X,Y,Xedges,Yedges)
Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 0.21 sec Evaluation completed in 0.33 sec

'Color' として 'c' を指定して、乱数データのビン化された散布図をプロットします。
tall 配列に対する計算を実行する場合、MATLAB® は並列プール (Parallel Computing Toolbox™ がある場合は既定) またはローカルの MATLAB セッションを使用します。Parallel Computing Toolbox がある場合にローカルの MATLAB セッションを使用して例を実行するには、関数 mapreducer を使用してグローバルな実行環境を変更します。
mapreducer(0) X = tall(randn(1e5,1)); Y = tall(randn(1e5,1)); binScatterPlot(X,Y,'Color','c')
Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 2: Completed in 0.67 sec - Pass 2 of 2: Completed in 0.19 sec Evaluation completed in 1.7 sec Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 0.12 sec Evaluation completed in 0.18 sec

入力引数
ビンに分散させるデータ。tall ベクトル、tall 行列行列または tall 多次元配列を別々の引数として指定します。X と Y は同じサイズでなければなりません。X と Y がベクトルではない場合、binScatterPlot はこれらを 1 列のベクトル X(:) および Y(:) として扱います。
X および Y の対応する要素では、2 次元データ点 [X(k),Y(k)] の x 座標と y 座標を指定します。X と Y の基となるデータ型は違うものにできますが、binScatterPlot はこれらの入力を連結し、単一の、支配的な基となるデータ型による N 行 2 列の tall 行列にします。
binScatterPlot は、すべての NaN 値を無視します。同様に、ビンのエッジとして Inf または -Inf を明示的に指定しない限り、binScatterPlot は値 Inf および -Inf を無視します。
メモ
flintmax より大きい int64 または uint64 型の整数が X または Y に含まれている場合、ビンのエッジを明示的に指定することをお勧めします。binScatterPlot は倍精度を使用して自動的に入力データをビン化しますが、flintmax より大きい数値では整数の精度が不足します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
各次元におけるビンの数。正の整数スカラー、または正の整数が格納されている 2 要素のベクトルを指定します。nbins を指定しない場合、binScatterPlot は X と Y の値に基づいて、使用するビンの個数を自動的に計算します。
nbinsがスカラーの場合、binScatterPlotはこの個数のビンを各次元で使用します。nbinsがベクトルの場合、nbins(1)は x 次元におけるビンの数を、nbins(2)は y 次元におけるビンの数を指定します。
例: binScatterPlot(X,Y,20) は、各次元で 20 個のビンを使用します。
例: binScatterPlot(X,Y,[10 20]) は、x 次元で 10 個のビンを、y 次元で 20 個のビンを使用します。
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) 番目のビンに含まれます。各次元の最後のビンには、最後の (外側の) エッジも含まれます。たとえば、Xedges(end-1) ≤ X(k) ≤ Xedges(end) かつ Yedges(i) ≤ Y(k) < Yedges(i+1) の場合、[X(k),Y(k)] は最後の行の i 番目のビンに含まれます。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
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) 番目のビンに含まれます。各次元の最後のビンには、最後の (外側の) エッジも含まれます。たとえば、Xedges(end-1) ≤ X(k) ≤ Xedges(end) かつ Yedges(i) ≤ Y(k) < Yedges(i+1) の場合、[X(k),Y(k)] は最後の行の i 番目のビンに含まれます。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。
例: binScatterPlot(X,Y,'BinWidth',[5 10])
ビン化アルゴリズム。'BinMethod' と次のいずれかの値から構成されるコンマ区切りのペアとして指定します。
| 値 | 説明 |
|---|---|
'auto' | 既定の 'auto' アルゴリズムでは、最大 100 個のビンを使用します。データ範囲をカバーし、基となる分布の形状が明らかになるようにビンの幅を選択します。 |
'scott' | スコットの法則は、データを結合すると正規分布に近づく場合に最適です。この法則は、他のほとんどの分布にも適しています。[3.5*std(X)*numel(X)^(-1/4), 3.5*std(Y)*numel(Y)^(-1/4)] というビン サイズを使用します。 |
'integers' | 整数ルールは、各整数についてビンを作成するので、整数データで有効です。幅が 1 のビンを使用し、ビンのエッジを各整数の中間に設定します。誤って多すぎるビンを作成しないようにするため、このルールを使用して、作成するビンの個数を 65536 個 (216) 個に制限することができます。データ範囲が 65536 を超える場合、整数ルールではさらに幅が広いビンを代わりに使用します。 |
メモ
生成される Histogram2 オブジェクトの BinMethod プロパティの値は、常に 'manual' になります。
各次元におけるビンの幅。'BinWidth' と正の整数のスカラーまたは 2 要素ベクトル [xWidth yWidth] から構成されるコンマ区切りのペアとして指定します。スカラー値を指定すると、ビンの幅が各次元で同じになります。
BinWidth を指定した場合、binScatterPlot は各次元で最大 1024 個 (210 個) のビンを使用できます。さらにビンが必要となる幅が指定された場合、binScatterPlot はビンの最大数に合わせてビンの幅を大きくします。
例: binScatterPlot(X,Y,'BinWidth',[5 10]) は、サイズが 5 のビンを x 次元で、サイズが 10 のビンを y 次元で使用します。
プロットのカラー テーマ。'Color' と次のいずれかのオプションから構成されるコンマ区切りのペアとして指定します。
| オプション | 説明 |
|---|---|
'b' | 青 |
'm' | 赤紫 |
'c' | シアン |
'r' | 赤 |
'g' | 緑 |
'y' | 黄 |
'k' | 黒 |
ガンマ補正。'Gamma' と正のスカラーから構成されるコンマ区切りのペアとして指定します。このオプションを使用して、イメージの詳細の量に影響を与える明度および色強度を調整します。
gamma < 1— ガンマが減少するにつれ、ビンのカウント数が小さいビンのシェーディングが徐々に暗くなり、より多くのイメージ詳細が含まれます。gamma > 1— ガンマが増加するにつれ、ビンのカウント数が小さいビンのシェーディングが徐々に明るくなり、イメージから詳細が取り除かれます。既定値の 1 では表示の補正は適用されません。
x 次元におけるビンの範囲。'XBinLimits' と 2 要素ベクトル [xbmin,xbmax] から構成されるコンマ区切りのペアとして指定します。このベクトルは、x 次元における最初と最後のビンのエッジを指定します。
binScatterPlot はビンの範囲に含まれるデータ Data(Data(:,1)>=xbmin & Data(:,1)<=xbmax) のみをプロットします。
y 次元におけるビンの範囲。'YBinLimits' と 2 要素ベクトル [ybmin,ybmax] から構成されるコンマ区切りのペアとして指定します。このベクトルは、y 次元における最初と最後のビンのエッジを指定します。
binScatterPlot はビンの範囲に含まれるデータ Data(Data(:,2)>=ybmin & Data(:,2)<=ybmax) のみをプロットします。
出力引数
ビン化された散布図。Histogram2 オブジェクトとして返されます。詳細については、Histogram2 のプロパティ を参照してください。
バージョン履歴
R2016b で導入
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)