Histogram のプロパティ
ヒストグラムの外観と動作
Histogram プロパティはヒストグラムの外観と動作を制御します。プロパティの値を変更することによって、ヒストグラムの要素を変更できます。ドット表記を使用して、特定のオブジェクトとプロパティを参照します。
h = histogram(randn(10,1)); c = h.BinWidth; h.BinWidth = 2;
ビン
ビンの数。正の整数として指定します。NumBins を指定しない場合、histogram は使用するビンの数を入力データに基づいて自動的に計算します。
NumBinsをBinMethod、BinWidth、またはBinEdgesと一緒に指定した場合、histogramは最後のパラメーターのみに従います。このオプションは、カテゴリカル データには適用されません。
ビンの幅。正のスカラーとして指定します。BinWidth を指定する場合、Histogram は最大 65,536 (216) 個のビンを使用できます。指定したビンの幅によってさらに多くのビンが必要となる場合、histogram はビンの最大数に対応する、より大きいビンの幅を使用します。
datetimeデータおよびdurationデータの場合、BinWidthをスカラー duration またはカレンダー期間にすることができます。BinWidthをBinMethod、NumBins、またはBinEdgesと一緒に指定した場合、histogramは最後のパラメーターのみに従います。このオプションは、カテゴリカル データには適用されません。
例: は幅が 5 のビンを使用します。histogram(X,'BinWidth',5)
ビンのエッジ。数値ベクトルとして指定します。最初の要素は最初のビンの先頭のエッジを指定します。最後の要素は最後のビンの後方のエッジを指定します。後方のエッジは最後のビンにのみ含まれます。
ビンのエッジを指定しない場合、histogram は自動的にビンのエッジを決定します。
BinCountsMode が "manual" の場合、BinEdges は行ベクトルでなければなりません。
BinEdgesをBinMethod、BinWidth、NumBins、またはBinLimitsと一緒に指定した場合、histogramはBinEdgesのみに従い、BinEdgesは最後に指定する必要があります。このオプションは、カテゴリカル データには適用されません。
ビンの範囲。2 要素ベクトル [bmin,bmax] として指定します。最初の要素は最初のビンのエッジを示します。2 番目の要素は最後のビンのエッジを示します。
このオプションを使用すると、ビンの範囲 X>=bmin & X<=bmax に含まれるデータのみを使用して計算します。
このオプションは、カテゴリカル データには適用されません。
例: は histogram(X,'BinLimits',[1,10])1 以上 10 以下の X の値のみをビンに入れます。
ビンの範囲の選択モード。'auto' または 'manual' で指定します。既定値は 'auto' であり、ビンの範囲はデータに合わせて自動的に調整されます。
BinLimitsまたはBinEdgesを指定すると、BinLimitsModeは'manual'に設定されます。BinLimitsModeを'auto'に指定すると、ビンの範囲はデータに合わせて再びスケーリングされます。このオプションは、カテゴリカル データのヒストグラムには適用されません。
ビン化アルゴリズム。次の表のいずれかの値を指定します。
| 値 | 説明 |
|---|---|
|
| 既定値の |
|
| スコットの法則はデータが正規分布に近い場合に最適です。この規則は他の多くの分布にも適しています。ビンの幅として |
|
| Freedman-Diaconis の法則は、データの外れ値の影響を受けにくく、裾が大きい分布をもつデータにより適しています。ビンの幅として |
|
| 整数ルールは整数ごとにビンを作成するため整数データで役立ちます。幅が 1 のビンを使用し、ビンのエッジを整数の中間に設定します。 誤って多すぎるビンを作成しないように、このルールを使用して作成するビンを 65536 (216) 個以下に制限できます。データの範囲が 65,536 よりも大きい場合、整数ルールは代わりに幅の広いビンを使用します。
|
|
| Sturges の法則は簡単なためよく用いられています。ビンの数として |
|
| 平方根ルールは他のソフトウェア パッケージで広く使用されています。ビンの数として |
histogram は、これらの式を厳密に使用するのではなく、ビンのエッジが "きりのよい" 数字になるように、ビンの数をわずかに調整します。
datetime または duration データの場合は、ビン化アルゴリズムをこれらの時間単位のいずれかとして指定します。
| 値 | 説明 | データ型 |
|---|---|---|
"second" | 各ビンは 1 秒です。 | datetime と duration |
"minute" | 各ビンは 1 分です。 | datetime と duration |
"hour" | 各ビンは 1 時間です。 | datetime と duration |
"day" | 各ビンは 1 カレンダー日です。この値には、夏時間のシフトが考慮されます。 | datetime と duration |
"week" | 各ビンは 1 カレンダー週です。 | datetime のみ |
"month" | 各ビンは 1 カレンダー月です。 | datetime のみ |
"quarter" | 各ビンは 1 カレンダー四半期です。 | datetime のみ |
"year" | 各ビンは 1 カレンダー年です。この値には、うるう日が考慮されます。 | datetime と duration |
"decade" | 各ビンは 10 年 (10 カレンダー年) です。 | datetime のみ |
"century" | 各ビンは 1 世紀 (100 カレンダー年) です。 | datetime のみ |
datetimeまたはdurationデータに対してBinMethodを指定する場合、histogramは最大 65,536 個 (216) のビンを使用できます。指定したビンの期間にさらに多くのビンが必要となる場合、histogramはビンの最大数に対応する、より大きいビンの幅を使用します。BinLimits、NumBins、BinEdges、またはBinWidthを指定すると、BinMethodは'manual'に設定されます。BinMethodをBinWidth、NumBins、またはBinEdgesと一緒に指定した場合、histogramは最後のパラメーターのみに従います。このオプションは、カテゴリカル データには適用されません。
例: はビンの中心を整数とします。histogram(X,'BinMethod','integers')
カテゴリ
メモ
このオプションはカテゴリカル ヒストグラムにのみ適用されます。
ヒストグラムに含めるカテゴリ。文字ベクトルの cell 配列、categorical 配列、string 配列、または pattern スカラーとして指定します。
入力 categorical 配列
Cを指定すると、histogramは既定でCの各カテゴリのバーをプロットします。その場合にカテゴリの一意のサブセットを指定するには、Categoriesを使用します。ビンのカウント数を指定する場合、
Categoriesにはヒストグラムの関連するカテゴリ名を指定します。
例: h = histogram(C,{'Large','Small'}) は、カテゴリ 'Large' および 'Small' のカテゴリカル データのみをプロットします。
例: histogram(C,"Y" + wildcardPattern) は、名前が文字 Y で始まるカテゴリにあるデータをプロットします。
例: histogram('Categories',{'Yes','No','Maybe'},'BinCounts',[22 18 3]) は 3 つのカテゴリと関連するビンのカウント数をもつヒストグラムをプロットします。
例: h.Categories は、histogram オブジェクト h 内にあるカテゴリをクエリします。
データ型: cell | categorical | string | pattern
カテゴリの表示順序。'data'、'ascend'、または 'descend' として指定します。
'data'— 入力データCのカテゴリの順序を使用します。'ascend'— 増加するバーの高さとともにヒストグラムを表示します。'descend'— 減少するバーの高さとともにヒストグラムを表示します。
このオプションは、カテゴリカル データでのみ機能します。
表示するカテゴリ数。スカラーとして指定します。'DisplayOrder' オプションを使用して、ヒストグラムに表示されるカテゴリの順序を変更できます。
このオプションは、カテゴリカル データでのみ機能します。
非表示カテゴリに属するデータの概要表示の切り替え。'on' または 'off' として、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
このオプションを
'on'に設定すると、ヒストグラムに'Others'という名前の追加のバーが表示されます。この追加のバーには、ヒストグラムに表示されるカテゴリに属さないすべての要素がカウントされます。ヒストグラムに表示されるカテゴリ数とその順序は、
'NumDisplayBins'および'DisplayOrder'オプションを使用して変更できます。このオプションは、カテゴリカル データでのみ機能します。
データ
ビンに分散させるデータ。ベクトル、行列、多次元配列または categorical 配列として指定します。Data がベクトルでない場合、histogram はそれを 1 つの列ベクトル Data(:) として扱い、1 つのヒストグラムをプロットします。
histogram は、NaN、NaT および未定義のカテゴリカル値をすべて無視します。同様にビンのエッジとして明示的に Inf または -Inf を指定しない限り、histogram は Inf 値および -Inf 値を無視します。通常、NaN 値、NaT 値、Inf 値、-Inf 値、<undefined> 値はプロットされませんが、'probability' などのデータ要素の総数を含む正規化計算に引き続き含まれます。
当初、カテゴリカルを使用して histogram オブジェクトが作成された場合、Data にはカテゴリカル値のみを指定できます。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | categorical | datetime | duration
この プロパティ は読み取り専用です。
ビンの値。数値ベクトルとして返されます。Normalization が 'count' (既定値) の場合、Values の k 番目の要素は Data の要素が k 番目のビンの区間に何個入るか (ビンのカウント数) を指定します。最後のビンはビンの "両端" の値を含みますが、そのほかのすべてのビンは先頭のエッジの値のみを含みます。
Normalization の値によっては、Values プロパティは代わりにビンのカウント数の正規化されたバリアントを含むことができます。
正規化のタイプ。次の表のいずれかの値を指定します。各ビン i に対して次のようになります。
はビンの値です。
はビン内の要素数です。
はビンの幅です。
は入力データ内の要素数です。データに
NaNなどの欠損値が含まれる場合、または一部のデータがビンの範囲外にある場合、この値はビン化されたデータより大きくなることがあります。
| 値 | ビンの値 | メモ |
|---|---|---|
'count' (既定) |
|
|
'probability' |
|
|
'percentage' |
|
|
'countdensity' |
|
|
'cumcount' |
|
|
'pdf' |
|
|
'cdf' |
|
|
例: は、確率密度関数の推定値を使用してデータをビン化します。histogram(X,'Normalization','pdf')
ビンのカウント数。ベクトルとして指定します。ビンのカウント数の計算が個別に実行され、histogram でデータのビン化を行わない場合、この入力を使用してビンのカウント数を histogram に渡します。
counts の長さはビンの数と等しくなければなりません。
数値ヒストグラムの場合、ビンの数は
length(edges)-1です。カテゴリカル ヒストグラムの場合、ビンの数はカテゴリの数と同じです。
Values プロパティとは異なり、BinCounts は正規化されません。Normalization が 'count' の場合、Values と BinCounts は等価になります。
例: histogram('BinEdges',-2:2,'BinCounts',[5 8 15 9])
例: histogram('Categories',{'Yes','No','Maybe'},'BinCounts',[22 18 3])
ビンのカウント数の選択モード。'auto' または 'manual' として指定します。既定値は 'auto' で、ビンのカウント数が Data および BinEdges から自動的に計算されます。
BinCounts を指定すると、BinCountsMode は自動的に 'manual' に設定されます。同様に、Data を指定すると、BinCountsMode は自動的に 'auto' に設定されます。
色とスタイル
ヒストグラムの表示スタイル。'bar' または 'stairs' で指定します。
'bar'—Aの各ウィンドウのヒストグラムの棒グラフを表示します。このメソッドは、データの周期的なトレンドを低減するのに便利です。'stairs'— 内部を塗りつぶさずにヒストグラムの外枠を表示する階段状プロットを表示します。
例: histogram(X,'DisplayStyle','stairs') はヒストグラムの外枠をプロットします。
バーの向き。'vertical' または 'horizontal' で指定します。
例: histogram(X,'Orientation','horizontal') は水平なバーをもつヒストグラム プロットを作成します。
カテゴリカル バーの相対的な幅。範囲 [0,1] のスカラー値として指定します。このプロパティは、ヒストグラム内にあるカテゴリカル バーの間隔を制御するために使用します。既定値の 0.9 は、バーの幅が前のバーから次のバーまでの間隔の 90 % で、その間隔の 5 % ずつがバーの両側にあることを示します。
BarWidth が 1 の場合は、バー同士が隙間なく表示されます。
このオプションは、カテゴリカル データでのみ機能します。
例: 0.5
ヒストグラムのバーの色。次の値の 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"
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
パレット パレットの色 "gem"— ライト テーマの既定値R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。

"glow"— ダーク テーマの既定値
orderedcolors関数とrgb2hex関数を使用すると、これらのパレットの RGB 3 成分および 16 進数カラー コードを取得できます。たとえば、"gem"パレットの RGB 3 成分を取得し、16 進数カラー コードに変換します。RGB = orderedcolors("gem"); H = rgb2hex(RGB);R2023b より前:
RGB = get(groot,"FactoryAxesColorOrder")を使用して、RGB 3 成分を取得します。R2024a より前:
H = compose("#%02X%02X%02X",round(RGB*255))を使用して、16 進数カラー コードを取得します。
DisplayStyle を 'stairs' に指定した場合、histogram は FaceColor プロパティを使用しません。
例: はバーが緑色のヒストグラム プロットを作成します。histogram(X,'FaceColor','g')
ヒストグラムのエッジの色。次の値の 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"
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
パレット パレットの色 "gem"— ライト テーマの既定値R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。

"glow"— ダーク テーマの既定値
orderedcolors関数とrgb2hex関数を使用すると、これらのパレットの RGB 3 成分および 16 進数カラー コードを取得できます。たとえば、"gem"パレットの RGB 3 成分を取得し、16 進数カラー コードに変換します。RGB = orderedcolors("gem"); H = rgb2hex(RGB);R2023b より前:
RGB = get(groot,"FactoryAxesColorOrder")を使用して、RGB 3 成分を取得します。R2024a より前:
H = compose("#%02X%02X%02X",round(RGB*255))を使用して、16 進数カラー コードを取得します。
例: はバーのエッジが赤いヒストグラム プロットを作成します。histogram(X,'EdgeColor','r')
ヒストグラムのバーの透明度。範囲 [0,1] のスカラー値として指定します。histogram は同じ透明度をヒストグラムのすべてのバーで使用します。1 の値は完全な不透明を、0 の値は完全な透明 (非表示) を意味します。
例: は完全に不透明なバーをもつヒストグラム プロットを作成します。histogram(X,'FaceAlpha',1)
ヒストグラムのバーのエッジの透明度。範囲 [0,1] のスカラー値として指定します。1 の値は完全な不透明を、0 の値は完全な透明 (非表示) を意味します。
例: はバーのエッジが半透明のヒストグラム プロットを作成します。 histogram(X,'EdgeAlpha',0.5)
ライン スタイル。次の表にリストされたオプションのいずれかとして指定します。
| ライン スタイル | 説明 | 結果として得られる線 |
|---|---|---|
"-" | 実線 |
|
"--" | 破線 |
|
":" | 点線 |
|
"-." | 一点鎖線 |
|
"none" | ラインなし | ラインなし |
バーの外枠の幅。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。
例: 1.5
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
シリーズ インデックス。正の整数または "none" として指定します。このプロパティは、Histogram オブジェクトの面の色を、他のオブジェクトの色と一致するよう再割り当てするのに役立ちます。
既定では、Histogram オブジェクトの SeriesIndex プロパティは、1 から始まる、作成順に対応する数値です。MATLAB® は、この数値を使用して、プロット関数を呼び出すときに色を割り当てるインデックスを計算します。インデックスは座標軸の ColorOrder プロパティに格納されている配列の行を参照します。同じ SeriesIndex 数値をもつ座標軸内のオブジェクトは同じ色をもちます。
SeriesIndex の値が "none" の場合は、インデックス方式に参加しない中間色に対応します。
手動の色割り当てにより SeriesIndex の動作をオーバーライドする方法
面の色を手動で制御するには、Histogram オブジェクトの FaceColor プロパティを色名や RGB 3 成分などのカラー値に設定します。
Histogram オブジェクトの面の色を手動で設定すると、MATLAB はそのオブジェクトの色の自動選択を無効にし、SeriesIndex プロパティの値に関係なく色を保持できるようにします。
自動選択を再度有効にするには、SeriesIndex プロパティを正の整数に設定し、FaceColor プロパティを "auto" に設定します。
場合によっては、MATLAB は SeriesIndex 値を 0 に設定し、色の自動選択も無効にします。
凡例
凡例によって使用されるテキスト。文字ベクトルとして指定します。このテキストは histogram のアイコンの隣に表示されます。
例: 'Text Description'
テキストを複数行にする場合、sprintf を使用して改行文字 \n を含む文字ベクトルを作成します。
例: sprintf('line one\nline two')
あるいは、関数 legend を使用して凡例テキストを指定することもできます。
関数
legendの入力引数としてテキストを指定した場合、凡例には指定されたテキストが使用され、DisplayNameプロパティが同じ値に設定されます。関数
legendの入力引数としてテキストを指定しない場合、凡例にはDisplayNameプロパティのテキストが使用されます。DisplayNameの既定値は次のいずれかの値です。数値入力の場合、
DisplayNameは文字ベクトルであり、ヒストグラムの作成に使用される入力データの変数名を表します。入力データに変数名が含まれていない場合、DisplayNameは空 ('') です。categorical 配列の入力の場合、
DisplayNameは空 ('') です。
DisplayName プロパティにテキストが含まれていない場合は、凡例で文字ベクトルが生成されます。この文字ベクトルは 'dataN' の形式になります。ここで、N は、凡例エントリのリスト内の位置を基に histogram オブジェクトに割り当てられる数字です。
既存の凡例内でこの文字ベクトルを対話的に編集した場合、MATLAB は DisplayName プロパティを編集後の文字ベクトルに更新します。
Annotation オブジェクトとして指定して、凡例にオブジェクトを含めます。Annotation オブジェクトの基となる IconDisplayStyle プロパティを次のいずれかの値に設定します。
"on"— 凡例にオブジェクトを含めます (既定)。"off"— 凡例にオブジェクトを含めません。
たとえば、obj という名前の Histogram オブジェクトを凡例から除外するには、IconDisplayStyle プロパティを "off" に設定します。
obj.Annotation.LegendInformation.IconDisplayStyle = "off";
あるいは、関数 legend を使用して、凡例内の項目を制御することもできます。最初の入力引数を、含めるグラフィックス オブジェクトのベクトルとして指定します。最初の入力引数に既存のグラフィックス オブジェクトを指定しない場合、それは凡例に表示されません。ただし、凡例が作成された後に座標軸に追加されたグラフィックス オブジェクトは凡例には表示されません。追加の項目を避けるには、すべてのプロットを作成した後に凡例を作成することを考慮してください。
対話機能
可視性の状態。"on" または "off"、もしくは数値または logical 1 (true) または 0 (false) として指定します。"on" の値は true と等価であり、"off" の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
"on"— オブジェクトを表示します。"off"— オブジェクトを削除せずに非表示にします。非表示のオブジェクトのプロパティには引き続きアクセスできます。
データ ヒントの内容。DataTipTemplate オブジェクトとして指定します。基となる DataTipTemplate オブジェクトのプロパティを変更することにより、データ ヒントに表示される内容を制御できます。プロパティの一覧については、DataTipTemplate のプロパティ を参照してください。
データ ヒントの変更の例については、カスタム データ ヒントの作成を参照してください。
メモ
DataTipTemplate オブジェクトは findobj または findall によって返されず、copyobj によってコピーされません。
コンテキスト メニュー。ContextMenu オブジェクトとして指定します。このプロパティは、オブジェクトを右クリックしたときにコンテキスト メニューを表示するために使用します。関数 uicontextmenu を使用して、コンテキスト メニューを作成します。
メモ
PickableParts プロパティが 'none' に設定されている場合または HitTest プロパティが 'off' に設定されている場合には、このコンテキスト メニューは表示されません。
選択状態。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
'on'— 選択されています。プロット編集モードでオブジェクトをクリックした場合、MATLAB はSelectedプロパティを'on'に設定します。SelectionHighlightプロパティも'on'に設定されている場合、MATLAB はオブジェクトの周囲に選択ハンドルを表示します。'off'— 選択されていません。
選択時の選択ハンドルの表示。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
'on'—Selectedプロパティが'on'に設定されているときに選択ハンドルを表示します。'off'—Selectedプロパティが'on'に設定されている場合でも選択ハンドルを表示しません。
コールバック
マウスクリック コールバック。次の値のいずれかとして指定します。
関数ハンドル
関数ハンドルと追加の引数を含む cell 配列
ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)
このプロパティは、オブジェクトをクリックしたときにコードを実行するために使用します。関数ハンドルを使用してこのプロパティを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。
クリックしたオブジェクト — コールバック関数内から、クリックしたオブジェクトのプロパティにアクセスします。
イベント データ — 空の引数です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (
~) に置換します。
関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、グラフィックス オブジェクトのコールバックの作成を参照してください。
メモ
PickableParts プロパティが 'none' に設定されている場合または HitTest プロパティが 'off' に設定されている場合には、このコールバックは実行されません。
オブジェクト作成関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、グラフィックス オブジェクトのコールバックの作成を参照してください。
このプロパティは、MATLAB がオブジェクトを作成するときに実行されるコールバック関数を指定します。MATLAB は CreateFcn コールバックを実行する前に、すべてのプロパティ値を初期化します。CreateFcn プロパティを指定しない場合、MATLAB は既定の作成関数を実行します。
既存のコンポーネントに CreateFcn プロパティを設定しても効果はありません。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、作成中のオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo を使用してオブジェクトにアクセスします。
オブジェクト削除関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、グラフィックス オブジェクトのコールバックの作成を参照してください。
このプロパティは、MATLAB がオブジェクトを削除するときに実行されるコールバック関数を指定します。MATLAB は、オブジェクトのプロパティを破棄する前に DeleteFcn コールバックを実行します。DeleteFcn プロパティを指定しない場合、MATLAB は既定の削除関数を実行します。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、削除されるオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo を使用してオブジェクトにアクセスします。
コールバック実行制御
コールバックの割り込み。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
このプロパティは実行中のコールバックが割り込み可能かどうかを決定します。次の 2 つのコールバックの状態について考慮する必要があります。
"実行中" コールバックは、現在実行しているコールバックです。
"割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。
MATLAB は、コールバック キューを処理するコマンドを実行するたびにコールバックの割り込み動作を判別します。これらのコマンドには、drawnow、figure、uifigure、getframe、waitfor、pause があります。
実行中コールバックにこれらのコマンドが含まれていない場合、割り込みは発生しません。MATLAB は、実行中コールバックの実行を先に終了させ、その後に割り込みコールバックを実行します。
実行中コールバックにこれらのいずれかのコマンドが含まれている場合、実行中コールバックを所有するオブジェクトの Interruptible プロパティに応じて割り込みが発生するかどうかが決まります。
Interruptibleの値が'off'の場合、割り込みは発生しません。代わりに、割り込みコールバックを所有するオブジェクトのBusyActionプロパティに応じて、割り込みコールバックが破棄されるかコールバック キューに追加されるかが決まります。Interruptibleの値が'on'の場合、割り込みが発生します。MATLAB は、コールバック キューの次回処理時に、実行中コールバックの実行を停止し、割り込みコールバックを実行します。割り込みコールバックが完了した後、MATLAB は実行中だったコールバックの実行を再開します。
メモ
コールバックの割り込みと実行は、以下の状況では動作が異なります。
割り込みコールバックが
DeleteFcn、CloseRequestFcnまたはSizeChangedFcnコールバックの場合、Interruptibleプロパティの値にかかわらず割り込みが発生します。実行中のコールバックが関数
waitforを現在実行している場合、Interruptibleプロパティの値にかかわらず割り込みが発生します。割り込みコールバックが
Timerオブジェクトで所有されている場合、Interruptibleプロパティの値にかかわらずスケジュールに従ってコールバックが実行されます。
コールバック キューイング。'queue' または 'cancel' として指定します。BusyAction プロパティは MATLAB による割り込みコールバックの実行の処理方法を決定します。次の 2 つのコールバックの状態について考慮する必要があります。
"実行中" コールバックは、現在実行しているコールバックです。
"割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。
BusyAction プロパティによってコールバック キューイングの動作が決まるのは、次の両方の条件を満たす場合のみです。
これらの条件に当てはまる場合、割り込みコールバックを所有するオブジェクトの BusyAction プロパティに応じて MATLAB による割り込みコールバックの処理方法が決まります。BusyAction プロパティは次の値を取ることができます。
'queue'— 割り込みコールバックをキューに入れ、実行中のコールバックが終了した後に処理されるようにします。'cancel'— 割り込みコールバックを実行しません。
マウス クリック キャプチャ機能。次の値の 1 つとして指定します。
'visible'— 表示されている場合にのみマウス クリックをキャプチャします。Visibleプロパティは、'on'に設定しなければなりません。Histogramオブジェクトがクリックに応答するか、先祖がクリックに応答するかは、HitTestプロパティが決定します。'none'— マウス クリックをキャプチャしません。Histogramオブジェクトをクリックすると、Figure ウィンドウの現在のビュー内でその後ろにあるオブジェクトにクリックが渡されます。HistogramオブジェクトのHitTestプロパティの効果はありません。
キャプチャしたマウス クリックへの応答。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
'on'—HistogramオブジェクトのButtonDownFcnコールバックをトリガーします。ContextMenuプロパティが定義されている場合は、コンテキスト メニューを呼び出します。'off'—Histogramオブジェクトの先祖のうち、次のいずれかの条件を満たす最も近い先祖のコールバックをトリガーします。HitTestプロパティが、'on'に設定されている。PickablePartsプロパティが、先祖によるマウス クリックのキャプチャを有効にする値に設定されている。
メモ
PickableParts プロパティは、Histogram オブジェクトがマウス クリックをキャプチャできるかどうかを決定します。キャプチャできない場合、HitTest プロパティは無効です。
この プロパティ は読み取り専用です。
削除状態。matlab.lang.OnOffSwitchState 型の on/off logical 値として返されます。
MATLAB は、DeleteFcn コールバックが実行を開始すると、BeingDeleted プロパティを 'on' に設定します。コンポーネント オブジェクトが存在しなくなるまで BeingDeleted プロパティは 'on' に設定されたままです。
クエリや変更の前にオブジェクトが削除されようとしていないか確認するために BeingDeleted プロパティの値をチェックします。
親/子
親。Axes、PolarAxes、Group または Transform オブジェクトとして指定します。
子。空の GraphicsPlaceholder 配列、または DataTip オブジェクト配列として返されます。このプロパティを使用して、チャートにプロットされるデータ ヒントのリストを表示します。
Children プロパティを使用して子の追加や削除を行うことはできません。このリストに子を追加するには、DataTip オブジェクトの Parent プロパティをチャート オブジェクトに設定します。
親の Children プロパティ内でのオブジェクト ハンドルの可視性。次の値のいずれかとして指定します。
"on"— オブジェクト ハンドルは常に表示されます。"off"— オブジェクト ハンドルは常に非表示です。このオプションは、他の関数による意図しない変更を防止するために役立ちます。HandleVisibilityを"off"に設定すると、その関数の実行中にハンドルが一時的に非表示になります。"callback"— オブジェクト ハンドルはコールバック内から、あるいはコールバックにより呼び出される関数から参照できます。しかし、コマンド ラインから呼び出される関数からは参照できません。このオプションを使用すると、コマンド ラインからのオブジェクトへのアクセスがブロックされますが、コールバック関数からのアクセスは許可されます。
オブジェクトが親の Children プロパティ内にリストされない場合、オブジェクト階層の検索またはハンドル プロパティのクエリによってオブジェクト ハンドルを取得する関数は、そのオブジェクト ハンドルを返しません。こうした関数の例としては、関数 get、findobj、gca、gcf、gco、newplot、cla、clf、および close などが挙げられます。
非表示のオブジェクト ハンドルは有効なままです。ルートの ShowHiddenHandles プロパティを "on" に設定すると、HandleVisibility プロパティの設定にかかわらず、すべてのオブジェクト ハンドルがリストされます。
識別子
この プロパティ は読み取り専用です。
グラフィックス オブジェクトのタイプ。'histogram' または 'categoricalhistogram' として返されます。プロット階層内にある特定のタイプのすべてのオブジェクトを検出するためにこのプロパティを使用できます。たとえば findobj を使用してタイプを検索します。
オブジェクト識別子。文字ベクトルまたは string スカラーとして指定します。オブジェクトの識別子として機能する一意の Tag 値を指定できます。コードの他の部分からオブジェクトにアクセスする必要がある場合、関数 findobj を使用して Tag 値に基づいてオブジェクトを検索できます。
ユーザー データ。任意の MATLAB 配列として指定します。たとえば、スカラー、ベクトル、行列、cell 配列、文字配列、table、または構造体を指定できます。このプロパティを使用して、任意のデータをオブジェクトに保存します。
App Designer を使用している場合は、UserData プロパティを使用する代わりに、アプリでパブリック プロパティまたはプライベート プロパティを作成してデータを共有します。詳細については、App Designer アプリ内でのデータの共有を参照してください。
バージョン履歴
R2014b で導入Normalization プロパティを 'percentage' に設定することにより、縦軸にパーセンテージをもつヒストグラムを作成できます。
SeriesIndex プロパティを "none" に設定して、Histogram オブジェクトの色の自動選択をオプトアウトします。"none" を指定すると、Histogram オブジェクトは中間色をもちます。
色の自動選択を再度有効にするには、SeriesIndex プロパティを正の整数に設定します。
SeriesIndex プロパティを設定することにより、Histogram オブジェクトの色がどのように変化するかを制御します。このプロパティは、座標軸内の異なるオブジェクトの色を一致させる場合に便利です。
R2020a 以降、コンテキスト メニューをグラフィックス オブジェクトまたは UI コンポーネントに割り当てる UIContextMenu プロパティの使用は推奨されなくなりました。代わりに、ContextMenu プロパティを使用してください。プロパティ値は同じです。
現在のところ、UIContextMenu プロパティのサポートを削除する予定はありません。ただし、UIContextMenu プロパティは、グラフィカル オブジェクトまたは UI コンポーネントで関数 get を呼び出して返されるリストに表示されなくなります。
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)



