Bar のプロパティ
棒グラフの外観と動作
Bar
プロパティは、Bar
オブジェクトの外観と動作を制御します。プロパティの値を変更することによって、棒グラフの特定の要素を変更できます。プロパティのクエリと設定にはドット表記を使用します。
b = bar(1:10); c = b.FaceColor b.FaceColor = [0 0.5 0.5];
色とスタイル
FaceColor
— 塗りつぶし色
'flat'
| RGB 3 成分 | 16 進数カラー コード | 'r'
| 'g'
| 'b'
| ...
塗りつぶし色。'flat'
、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。'flat'
オプションは、Bar
オブジェクトの CData
プロパティ値を使用して面に着色します。
カスタム色を使用する場合は、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" | |
"none" | 該当なし | 該当なし | 該当なし | 色なし |
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" |
R2017b から、この既定値は座標軸の ColorOrder
プロパティの RGB 3 成分です。以前のリリースにおいて、この既定値は 'flat'
で、色はカラーマップに基づいていました。
例: b = bar(1:10,'FaceColor','red')
例: b.FaceColor = [0 0.5 0.5];
例: b.FaceColor = 'flat';
例: b.FaceColor = '#D2F9A7';
FaceColorMode
— FaceColor
の設定方法を制御
"auto"
(既定値) | "manual"
FaceColor
プロパティの設定方法を制御します。次のいずれかの値として指定します。
"auto"
—Bar
オブジェクトのSeiesIndex
プロパティと座標軸のColorOrder
プロパティを使用することにより、MATLAB がFaceColor
プロパティ値を制御します。"manual"
—Bar
オブジェクトを作成するときに、FaceColor
プロパティ値を直接設定するか、関数の引数として間接的に設定します。
FaceColor
プロパティの値を手動で変更すると、MATLAB は FaceColorMode
プロパティの値を "manual"
に変更します。
EdgeColor
— 外枠の色
'flat'
| RGB 3 成分 | 16 進数カラー コード | 'r'
| 'g'
| 'b'
| ...
外枠の色。'flat'
、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。150 本以下のバーがある場合、既定値は [0 0 0]
で黒に相当します。150 本を超えるバーが隣接している場合、既定値は 'none'
です。
R2017b から、'flat'
オプションは CData
値を使用してエッジに着色します。以前のリリースにおいて、'flat'
オプションはカラーマップの色を使用してエッジに色を付けていました。
カスタム色を使用する場合は、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" | |
"none" | 該当なし | 該当なし | 該当なし | 色なし |
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" |
例: b = bar(1:10,'EdgeColor','red')
例: b.EdgeColor = [0 0.5 0.5];
例: b.EdgeColor = 'flat';
例: b.EdgeColor = '#D2F9A7';
FaceAlpha
— 面の透明度
1
(既定値) | 範囲 [0,1]
のスカラー
面の透明度。[0,1]
の範囲のスカラーとして指定します。値 1 は不透明、値 0 は完全な透明を表します。0 と 1 の間の値は半透明です。
例: b = bar(1:10,'FaceAlpha',0.5)
例: b.FaceAlpha = 0.5;
EdgeAlpha
— エッジの透明度
1
(既定値) | 範囲 [0,1]
のスカラー
エッジの透明度。[0,1]
の範囲のスカラーとして指定します。値 1 は不透明、値 0 は完全な透明を表します。0 と 1 の間の値は半透明です。
例: b = bar(1:10,'EdgeAlpha',0.5)
例: b.EdgeAlpha = 0.5;
LineStyle
— ライン スタイル
"-"
(既定値) | "--"
| ":"
| "-."
| "none"
ライン スタイル。次の表にリストされたオプションのいずれかとして指定します。
ライン スタイル | 説明 | 結果として得られる線 |
---|---|---|
"-" | 実線 |
|
"--" | 破線 |
|
":" | 点線 |
|
"-." | 一点鎖線 |
|
"none" | ラインなし | ラインなし |
LineWidth
— バーの外枠の幅
0.5
(既定値) | 正の値
バーの外枠の幅。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。
例: 1.5
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
SeriesIndex
— シリーズ インデックス
正の整数 | "none"
シリーズ インデックス。正の整数または "none"
として指定します。このプロパティは、テキスト、プロット ライン、またはその他の Bar
オブジェクトなどのグラフィック オブジェクトの色を一致させるのに役立ちます。
既定では、Bar
オブジェクトの SeriesIndex
プロパティは、1
から始まる、作成順に対応する数値です。MATLAB は、この数値を使用して、プロット関数を呼び出すときに色を自動的に割り当てるインデックスを計算します。このインデックスは、座標軸の ColorOrder
プロパティに格納されている配列の行を表します。同じ SeriesIndex
数値をもつ座標軸内のオブジェクトは同じ色をもちます。
SeriesIndex
の値が "none"
の場合は、インデックス方式に参加しない中間色に対応します。 (R2023b 以降)
手動の色割り当てにより SeriesIndex
の動作をオーバーライドする方法
バーの色を手動で制御するには、以下のいずれかの方法を使用します。
すべてのバーに 1 つの色 -
FaceColor
プロパティを、色名、RGB 3 成分、または 16 進数カラー コードに設定します。1 つ以上のバーに異なる色 —
FaceColor
プロパティを"flat"
に設定します。次にCData
プロパティを RGB 3 成分、RGB 3 成分の行列、スカラー カラーマップ インデックス、またはカラーマップ インデックスのベクトルに設定します。
Bar
オブジェクトの色を手動で設定すると、MATLAB はそのオブジェクトの色の自動選択を無効にし、SeriesIndex
プロパティの値に関係なく色を保持できるようにします。モード プロパティ FaceColorMode
および CDataMode
は、色が手動で (ユーザーにより) 設定されているか、自動的に設定されているかを示します。値 "manual"
は手動選択を示し、値 "auto"
は自動選択を示します。
自動選択を再度有効にするには、SeriesIndex
プロパティを正の整数に設定し、以下のいずれかの手順を実行します。
FaceColorMode
プロパティを"auto"
に設定する。FaceColor
プロパティを"flat"
に設定し、CDataMode
プロパティを"auto"
に設定する。
場合によっては、MATLAB は SeriesIndex
プロパティを 0
に設定し、色の自動選択も無効にします。
棒グラフの種類
BarWidth
— 個々のバーの相対的な幅
0.8
(既定値) | 範囲 [0,1]
のスカラー
個々のバーの相対的な幅。範囲 [0,1]
のスカラー値として指定します。このプロパティは、グループ内におけるバーの間隔を制御するのに使用します。既定値は 0.8
であり、MATLAB で少し間隔を空けて各バーが表示されます。このプロパティを 1
に設定すると、バー同士が隙間なく表示されます。
例: 0.5
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Horizontal
— 横棒グラフ
'off'
(既定値) | on/off logical 値
横棒グラフ。'on'
または 'off'
もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true
と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
ベースライン
BaseValue
— ベースライン値
0
(既定値) | スカラー数値
ベースライン値。スカラー数値として指定します。
指定したベースライン値は、棒グラフの方向に応じて x 軸または y 軸のいずれかに適用されます。棒グラフの方向を垂直から水平に、またはその逆に変更した場合、ベースライン値は変更されることがあります。BaseValue
プロパティは、Horizontal
プロパティを設定した後に設定してください。
ShowBaseLine
— ベースラインの可視性
'on'
(既定値) | on/off logical 値
ベースラインの可視性。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true
と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
'on'
— ベースラインを表示します。'off'
— ベースラインを非表示にします。
BaseLine
— ベースライン
baseline オブジェクト
この プロパティ は読み取り専用です。
baseline オブジェクト。ベースライン プロパティの一覧については、Baseline のプロパティ を参照してください。
データ
CData
— カラー データ
RGB 3 成分 | 3 列の行列 | スカラー | ベクトル
カラー データ。次のいずれかの値として指定します。
RGB 3 成分 — 単一の RGB カラー値をすべてのバーに適用します。
3 列の行列 — バーごとに 1 色。行列の各行は、特定のバーの RGB 3 成分を指定します。
スカラー — 単一の色をすべてのバーに適用します。この色はカラーマップから得られます。
ベクトル — バーごとに 1 色。色はカラーマップから得られます。
既定では、棒グラフを作成するときに CData
プロパティに RGB 3 成分から成る 3 列の行列が含まれます。行列内の対応する行を変更することで、特定のバーの色を変更できます。
このプロパティは、FaceColor
または EdgeColor
プロパティが 'flat'
に設定されている場合にのみ適用されます。
例
FaceColor
プロパティを 'flat'
に設定して、特定のバーの色を変更します。次に、行列 CData
内の対応する行を新しい RGB 3 成分に変更します。たとえば、2 番目のバーの色を変更します。
b = bar(1:10,'FaceColor','flat'); b.CData(2,:) = [0 0.8 0.8];
CDataMode
— CData
の設定方法を制御
"auto"
(既定値) | "manual"
CData
プロパティの設定方法を制御します。次のいずれかの値として指定します。
"auto"
— MATLAB によってCData
プロパティの値が制御されます。"manual"
—Bar
オブジェクトを作成するときに、CData
プロパティ値を直接設定するか、関数の引数として間接的に設定します。
CData
プロパティの値を手動で変更すると、MATLAB は CDataMode
プロパティの値を "manual"
に変更します。
XData
— バーの位置
ベクトル
バーの位置。重複する値のないベクトルとして指定します。
縦棒グラフの場合、値は x 軸上のバーの位置です。
横棒グラフの場合は y 軸上のバーの位置です。
あるいは、関数 bar
または barh
の入力引数 X
を使用して、バーの位置を指定します。X
を指定しない場合、YData
の値のインデックスに基づいてバーの位置が決まります。
XData
と YData
は同じ長さでなければなりません。
例: 1:10
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| categorical
| datetime
| duration
XDataMode
— XData
の選択モード
'auto'
(既定値) | 'manual'
XData
の選択モード。次の値のいずれかとして指定します。
'auto'
—YData
(3 次元プロットの場合はZData
) の値のインデックスを使用します。'manual'
— 手動で指定した値を使用します。値を指定するには、XData
プロパティを設定するか、プロット関数の入力引数X
を指定します。
XDataSource
— XData
にリンクされている変数
''
(既定値) | 文字ベクトル | string
XData
にリンクされている変数。MATLAB ワークスペースの変数名を含む文字ベクトルまたは string として指定します。MATLAB はベース ワークスペース内の変数を評価して XData
を生成します。
既定ではリンクされている変数はないため、この値は空の文字ベクトル ''
です。変数をリンクしても MATLAB は XData
の値をすぐに更新しません。データ値の更新を強制するには、関数 refreshdata
を使用します。
メモ
1 つのデータ ソース プロパティを異なる次元のデータを含む変数に変更すると、すべてのデータ ソース プロパティを適切な値に変更するまでは、関数が警告を生成し、グラフが描画されない可能性があります。
例: 'x'
YData
— バーの長さ
ベクトル
バーの長さ。ベクトルとして指定します。あるいは、関数 bar
または barh
の入力引数 Y
を使用して、バーの長さを指定します。
XData
と YData
は同じ長さでなければなりません。
例: 1:10
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| duration
YDataSource
— YData
にリンクされている変数
''
(既定値) | 文字ベクトル | string
YData
にリンクされている変数。MATLAB ワークスペースの変数名を含む文字ベクトルまたは string として指定します。MATLAB はベース ワークスペース内の変数を評価して YData
を生成します。
既定ではリンクされている変数はないため、この値は空の文字ベクトル ''
です。変数をリンクしても MATLAB は YData
の値をすぐに更新しません。データ値の更新を強制するには、関数 refreshdata
を使用します。
メモ
1 つのデータ ソース プロパティを異なる次元のデータを含む変数に変更すると、すべてのデータ ソース プロパティを適切な値に変更するまでは、関数が警告を生成し、グラフが描画されない可能性があります。
例: 'y'
XEndPoints
— バーの先端の x 座標
ベクトル
この プロパティ は読み取り専用です。
バーの先端の x 座標。ベクトルとして返されます。これらの座標は、テキスト、誤差範囲、その他のオブジェクトをバーの先端に追加する場合に便利です。たとえば、バーの先端にテキストを追加する場合に、このプロパティの値を関数 text
に渡すことができます。
YEndPoints
— バーの先端の y 座標
ベクトル
この プロパティ は読み取り専用です。
バーの先端の y 座標。ベクトルとして返されます。これらの座標は、テキスト、誤差範囲、その他のオブジェクトをバーの先端に追加する場合に便利です。たとえば、バーの先端にテキストを追加する場合に、このプロパティの値を関数 text
に渡すことができます。
凡例
DisplayName
— 凡例ラベル
''
(既定値) | 文字ベクトル | string スカラー
凡例ラベル。文字ベクトルまたは string スカラーとして指定します。legend
コマンドを呼び出すまで、凡例は表示されません。テキストを指定しない場合、legend
は 'dataN'
形式を使用してラベルを設定します。
Annotation
— 凡例にオブジェクトを含める
Annotation
オブジェクト
凡例にオブジェクトを含めるかどうか。Annotation
オブジェクトとして指定します。Annotation
オブジェクトの基となる IconDisplayStyle
プロパティを次のいずれかの値に設定します。
"on"
— 凡例にオブジェクトを含めます (既定)。"off"
— 凡例にオブジェクトを含めません。
たとえば、obj
という Bar
オブジェクトを凡例から除外するには、IconDisplayStyle
プロパティを "off"
に設定します。
obj.Annotation.LegendInformation.IconDisplayStyle = "off";
あるいは、関数 legend
を使用して、凡例内の項目を制御することもできます。最初の入力引数を、含めるグラフィックス オブジェクトのベクトルとして指定します。最初の入力引数に既存のグラフィックス オブジェクトを指定しない場合、それは凡例に表示されません。ただし、凡例が作成された後に座標軸に追加されたグラフィックス オブジェクトは凡例には表示されません。追加の項目を避けるには、すべてのプロットを作成した後に凡例を作成することを考慮してください。
対話機能
Visible
— 可視性の状態
"on"
(既定値) | on/off logical 値
可視性の状態。"on"
または "off"
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。"on"
の値は true
と等価であり、"off"
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
"on"
— オブジェクトを表示します。"off"
— オブジェクトを削除せずに非表示にします。非表示のオブジェクトのプロパティには引き続きアクセスできます。
DataTipTemplate
— データ ヒントの内容
DataTipTemplate
オブジェクト
データ ヒントの内容。DataTipTemplate
オブジェクトとして指定します。基となる DataTipTemplate
オブジェクトのプロパティを変更することにより、データ ヒントに表示される内容を制御できます。プロパティの一覧については、DataTipTemplate のプロパティ を参照してください。
データ ヒントの変更の例については、カスタム データ ヒントの作成を参照してください。
メモ
DataTipTemplate
オブジェクトは findobj
または findall
によって返されず、copyobj
によってコピーされません。
ContextMenu
— コンテキスト メニュー
空の GraphicsPlaceholder
配列 (既定値) | ContextMenu
オブジェクト
コンテキスト メニュー。ContextMenu
オブジェクトとして指定します。このプロパティは、オブジェクトを右クリックしたときにコンテキスト メニューを表示するために使用します。関数 uicontextmenu
を使用して、コンテキスト メニューを作成します。
メモ
PickableParts
プロパティが 'none'
に設定されている場合または HitTest
プロパティが 'off'
に設定されている場合には、このコンテキスト メニューは表示されません。
Selected
— 選択状態
'off'
(既定値) | on/off logical 値
選択状態。'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'
— 選択されていません。
SelectionHighlight
— 選択ハンドルの表示
'on'
(既定値) | on/off logical 値
選択時の選択ハンドルの表示。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
'on'
—Selected
プロパティが'on'
に設定されているときに選択ハンドルを表示します。'off'
—Selected
プロパティが'on'
に設定されている場合でも選択ハンドルを表示しません。
Clipping
— 座標軸の範囲でのオブジェクトのクリップ
'on'
(既定値) | on/off logical 値
座標軸の範囲でのオブジェクトのクリップ。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
'on'
の値は座標軸の範囲外になるオブジェクトの部分をクリップします。'off'
の値は座標軸の範囲外に表示される部分があってもオブジェクト全体を表示します。プロットの作成、hold on
の設定、座標軸のスケーリングの固定を行ってから、元のプロットよりも大きくなるようにオブジェクトを作成した場合、オブジェクトの一部が座標軸の範囲の外に表示されることがあります。
オブジェクトを含む座標軸の Clipping
プロパティは 'on'
に設定しなければなりません。そうしない場合、このプロパティの効果はありません。クリップ動作の詳細については、座標軸の Clipping
プロパティを参照してください。
コールバック
ButtonDownFcn
— マウスクリック コールバック
''
(既定値) | 関数ハンドル | cell 配列 | 文字ベクトル
マウスクリック コールバック。次の値のいずれかとして指定します。
関数ハンドル
関数ハンドルと追加の引数を含む cell 配列
ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)
このプロパティは、オブジェクトをクリックしたときにコードを実行するために使用します。関数ハンドルを使用してこのプロパティを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。
クリックしたオブジェクト — コールバック関数内から、クリックしたオブジェクトのプロパティにアクセスします。
イベント データ — 空の引数です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (
~
) に置換します。
関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、グラフィックス オブジェクトのコールバックの作成を参照してください。
メモ
PickableParts
プロパティが 'none'
に設定されている場合または HitTest
プロパティが 'off'
に設定されている場合には、このコールバックは実行されません。
CreateFcn
— 作成関数
''
(既定値) | 関数ハンドル | cell 配列 | 文字ベクトル
オブジェクト作成関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、グラフィックス オブジェクトのコールバックの作成を参照してください。
このプロパティは、MATLAB がオブジェクトを作成するときに実行されるコールバック関数を指定します。MATLAB は CreateFcn
コールバックを実行する前に、すべてのプロパティ値を初期化します。CreateFcn
プロパティを指定しない場合、MATLAB は既定の作成関数を実行します。
既存のコンポーネントに CreateFcn
プロパティを設定しても効果はありません。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、作成中のオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo
を使用してオブジェクトにアクセスします。
DeleteFcn
— 削除関数
''
(既定値) | 関数ハンドル | cell 配列 | 文字ベクトル
オブジェクト削除関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、グラフィックス オブジェクトのコールバックの作成を参照してください。
このプロパティは、MATLAB がオブジェクトを削除するときに実行されるコールバック関数を指定します。MATLAB は、オブジェクトのプロパティを破棄する前に DeleteFcn
コールバックを実行します。DeleteFcn
プロパティを指定しない場合、MATLAB は既定の削除関数を実行します。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、削除されるオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo
を使用してオブジェクトにアクセスします。
コールバック実行制御
Interruptible
— コールバックの割り込み
'on'
(既定値) | on/off logical 値
コールバックの割り込み。'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
プロパティの値にかかわらずスケジュールに従ってコールバックが実行されます。
BusyAction
— コールバック キューイング
'queue'
(既定値) | 'cancel'
コールバック キューイング。'queue'
または 'cancel'
として指定します。BusyAction
プロパティは MATLAB による割り込みコールバックの実行の処理方法を決定します。次の 2 つのコールバックの状態について考慮する必要があります。
"実行中" コールバックは、現在実行しているコールバックです。
"割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。
BusyAction
プロパティによってコールバック キューイングの動作が決まるのは、次の両方の条件を満たす場合のみです。
これらの条件に当てはまる場合、割り込みコールバックを所有するオブジェクトの BusyAction
プロパティに応じて MATLAB による割り込みコールバックの処理方法が決まります。BusyAction
プロパティは次の値を取ることができます。
'queue'
— 割り込みコールバックをキューに入れ、実行中のコールバックが終了した後に処理されるようにします。'cancel'
— 割り込みコールバックを実行しません。
PickableParts
— マウス クリック キャプチャ機能
'visible'
(既定値) | 'none'
マウス クリック キャプチャ機能。次の値の 1 つとして指定します。
'visible'
— 表示されている場合にマウス クリックをキャプチャします。Visible
プロパティが'on'
に設定されていなければならず、Bar
オブジェクトの色が定義されている部分をクリックしなければなりません。関連付けられている色のプロパティが'none'
に設定されている部分をクリックすることはできません。Bar
オブジェクトがクリックに応答するか、先祖がクリックに応答するかは、HitTest
プロパティが決定します。'none'
— マウス クリックをキャプチャしません。Bar
オブジェクトをクリックすると、Figure ウィンドウの現在のビュー内でその下にあるオブジェクトにクリックが渡されます。Bar
オブジェクトのHitTest
プロパティの効果はありません。
HitTest
— キャプチャしたマウス クリックへの応答
'on'
(既定値) | on/off logical 値
キャプチャしたマウス クリックへの応答。'on'
または 'off'
、もしくは数値または logical 1
(true
) または 0
(false
) として指定します。'on'
の値は true と等価であり、'off'
は false
と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState
型の on/off logical 値として格納されます。
'on'
—Bar
オブジェクトのButtonDownFcn
コールバックをトリガーします。ContextMenu
プロパティが定義されている場合は、コンテキスト メニューを呼び出します。'off'
—Bar
オブジェクトの先祖のうち、次のいずれかの条件を満たす最も近い先祖のコールバックをトリガーします。HitTest
プロパティが'on'
に設定されているPickableParts
プロパティが、先祖によるマウス クリックのキャプチャを有効にする値に設定されている
メモ
PickableParts
プロパティは、Bar
オブジェクトがマウス クリックをキャプチャできるかどうかを決定します。キャプチャできない場合、HitTest
プロパティは無効です。
BeingDeleted
— 削除状態
on/off logical 値
この プロパティ は読み取り専用です。
削除状態。matlab.lang.OnOffSwitchState
型の on/off logical 値として返されます。
MATLAB は、DeleteFcn
コールバックが実行を開始すると、BeingDeleted
プロパティを 'on'
に設定します。コンポーネント オブジェクトが存在しなくなるまで BeingDeleted
プロパティは 'on'
に設定されたままです。
クエリや変更の前にオブジェクトが削除されようとしていないか確認するために BeingDeleted
プロパティの値をチェックします。
親/子
Parent
— 親
Axes
オブジェクト | Group
オブジェクト | Transform
オブジェクト
親。Axes
、Group
または Transform
オブジェクトとして指定します。
Children
— 子
空の GraphicsPlaceholder
配列 | DataTip
オブジェクト配列
子。空の GraphicsPlaceholder
配列、または DataTip
オブジェクト配列として返されます。このプロパティを使用して、チャートにプロットされるデータ ヒントのリストを表示します。
Children
プロパティを使用して子の追加や削除を行うことはできません。このリストに子を追加するには、DataTip
オブジェクトの Parent
プロパティをチャート オブジェクトに設定します。
HandleVisibility
— オブジェクト ハンドルの可視性
"on"
(既定値) | "off"
| "callback"
親の Children
プロパティ内でのオブジェクト ハンドルの可視性。次の値のいずれかとして指定します。
"on"
— オブジェクト ハンドルは常に表示されます。"off"
— オブジェクト ハンドルは常に非表示です。このオプションは、他の関数による意図しない変更を防止するために役立ちます。HandleVisibility
を"off"
に設定すると、その関数の実行中にハンドルが一時的に非表示になります。"callback"
— オブジェクト ハンドルはコールバック内から、あるいはコールバックにより呼び出される関数から参照できます。しかし、コマンド ラインから呼び出される関数からは参照できません。このオプションを使用すると、コマンド ラインからのオブジェクトへのアクセスがブロックされますが、コールバック関数からのアクセスは許可されます。
オブジェクトが親の Children
プロパティ内にリストされない場合、オブジェクト階層の検索またはハンドル プロパティのクエリによってオブジェクト ハンドルを取得する関数は、そのオブジェクト ハンドルを返しません。こうした関数の例としては、関数 get
、findobj
、gca
、gcf
、gco
、newplot
、cla
、clf
、および close
などが挙げられます。
非表示のオブジェクト ハンドルは有効なままです。ルートの ShowHiddenHandles
プロパティを "on"
に設定すると、HandleVisibility
プロパティの設定にかかわらず、すべてのオブジェクト ハンドルがリストされます。
識別子
Type
— グラフィックス オブジェクトのタイプ
'bar'
(既定値)
この プロパティ は読み取り専用です。
グラフィックス オブジェクトのタイプ。'bar'
として返されます。プロット階層内にある特定のタイプのすべてのオブジェクトを検出するためにこのプロパティを使用できます。たとえば findobj
を使用してタイプを検索します。
Tag
— オブジェクト識別子
''
(既定値) | 文字ベクトル | string スカラー
オブジェクト識別子。文字ベクトルまたは string スカラーとして指定します。オブジェクトの識別子として機能する一意の Tag
値を指定できます。コードの他の部分からオブジェクトにアクセスする必要がある場合、関数 findobj
を使用して Tag
値に基づいてオブジェクトを検索できます。
UserData
— ユーザー データ
[]
(既定値) | 配列
ユーザー データ。任意の MATLAB 配列として指定します。たとえば、スカラー、ベクトル、行列、cell 配列、文字配列、table、または構造体を指定できます。このプロパティを使用して、任意のデータをオブジェクトに保存します。
App Designer を使用している場合は、UserData
プロパティを使用する代わりに、アプリでパブリック プロパティまたはプライベート プロパティを作成してデータを共有します。詳細については、App Designer アプリ内でのデータの共有を参照してください。
バージョン履歴
R2006a より前に導入R2023b: SeriesIndex="none"
を使用した色の自動選択のオプトアウト
SeriesIndex
プロパティを "none"
に設定して、Bar
オブジェクトの色の自動選択をオプトアウトします。"none"
を指定すると、Bar
オブジェクトは中間色をもちます。
色の自動選択を再度有効にするには、SeriesIndex
プロパティを正の整数に設定します。
R2023a: BaseValue
プロパティが座標軸の範囲とともに変更されなくなった
棒グラフの BaseValue
プロパティは、座標軸の範囲に依存しなくなりました。このプロパティの値は、座標軸の範囲の変更や座標軸内でのパンが行われても同じままです。
R2020a: SeriesIndex
プロパティを使用した色の自動選択の制御
SeriesIndex
プロパティを設定することにより、Bar
オブジェクトの色がどのように変化するかを制御します。このプロパティは、座標軸内の異なるオブジェクトの色を一致させる場合に便利です。
R2020a: UIContextMenu
プロパティは非推奨
UIContextMenu
プロパティの設定や取得は推奨されていません。代わりに、ContextMenu
プロパティを使用してください。これは、UIContextMenu
プロパティと同じタイプの入力を受け入れ、同じように動作します。
UIContextMenu
プロパティを削除する予定はありませんが、関数 set
、get
、または properties
を Bar
オブジェクトで呼び出す際にリストされなくなりました。
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)