ドキュメンテーション

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

GraphPlot のプロパティ

グラフ プロットの外観と動作

GraphPlot プロパティはプロットするグラフの外観と動作を制御します。プロパティの値を変更することによって、グラフ表示の外観を変更できます。ドット表記を使用して、特定のオブジェクトとプロパティを参照します。

G = graph([1 1 1 1 5 5 5 5],[2 3 4 5 6 7 8 9]);
h = plot(G);
c = h.EdgeColor;
h.EdgeColor = 'k';

ノード

すべて展開する

ノードの色。次の値のいずれかとして指定します。

  • 'none' — ノードは描画されません。

  • 'flat' — 各ノードの色は NodeCData の値によって決まります。

  • RGB 3 成分または色名 — すべてのノードで指定した色が使用されます。

    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]

  • 行列 — 各行はそれぞれ 1 つのノードの色を表す RGB 3 成分です。この行列のサイズは numnodes(G)3 列です。

例: plot(G,'NodeColor','k') は黒のノードをもつグラフ プロットを作成します。

ノード マーカー記号。次の表の値のいずれか、またはこのような値の cell 配列または string ベクトルとして指定します。既定では、グラフ ノードに円マーカーを使用します。ノードごとに異なるマーカーを使用するには、文字ベクトルの cell 配列、または string ベクトルを指定します。

説明
'o'
'+'プラス記号
'*'アスタリスク
'.'
'x'十字
'square' または 's'正方形
'diamond' または 'd'菱形
'^'上向き三角形
'v'下向き三角形
'>'右向き三角形
'<'左向き三角形
'pentagram' または 'p'星形五角形
'hexagram' または 'h'星形六角形
'none'マーカーなし

例: '+'

例: 'diamond'

ノードのマーカー サイズ。ポイント単位の正の値、またはそのような値のベクトルとして指定します。グラフのノードごとに異なるマーカー サイズを使用するには、ベクトルを指定します。MarkerSize の既定値は、ノード数が 100 以下のグラフでは 4、ノード数が 100 を超えるグラフでは 2 です。

例: 10

ノード マーカーの色データ。グラフ内のノード数に等しい長さをもつベクトルとして指定します。NodeCData の値は現在のカラーマップの色に線形にマッピングされ、その結果、プロットしたグラフの各ノードが異なる色になります。

エッジ

すべて展開する

エッジの色。次の値の 1 つとして指定します。

  • 'none' — エッジは描画されません。

  • 'flat' — 各エッジの色は EdgeCData の値によって決まります。

  • RGB 3 成分または色名 — すべてのエッジで指定した色が使用されます。

    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]

  • 行列 — 各行はそれぞれ 1 つのエッジの色を表す RGB 3 成分です。この行列のサイズは numedges(G)3 列です。

例: plot(G,'EdgeColor','r') は赤のエッジをもつグラフ プロットを作成します。

ライン スタイル。次の表のライン スタイルのいずれか、またはそのような値の cell 配列または string ベクトルとして指定します。エッジごとに異なるライン スタイルを使用するには、文字ベクトルの cell 配列または string ベクトルを指定します。

文字ライン スタイル結果として得られる線
'-'実線

'--'破線

':'点線

'-.'一点鎖線

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

エッジのライン幅。ポイント単位の正の値、またはそのような値のベクトルとして指定します。グラフのエッジごとに異なるライン幅を使用するには、ベクトルを指定します。

例: 0.75

グラフ エッジの透明度。0 以上 1 以下のスカラー値として指定します。1 の値は完全な不透明を、0 の値は完全な透明 (非表示) を意味します。

例: 0.25

エッジ ラインの色データ。グラフ内のエッジ数に等しい長さをもつベクトルとして指定します。EdgeCData の値は現在のカラーマップの色に線形にマッピングされ、その結果、プロットしたグラフの各エッジが異なる色になります。

矢印のサイズ。ポイント単位の正の値、またはそのような値のベクトルとして指定します。ベクトルとして指定した場合、ArrowSize はグラフの各エッジの矢印のサイズを指定します。ArrowSize の既定値は、ノード数が 100 以下のグラフでは 7、ノード数が 100 を超えるグラフでは 4 です。

ArrowSize は有向グラフでのみ有効です。

例: 15

エッジ上での矢印の位置。[0 1] の範囲内の値、またはそのような値の、エッジ数と等しい長さのベクトルとして指定します。値が 0 に近いと矢印はソース ノードに近くなり、値が 1 に近いと矢印はターゲット ノードに近くなります。既定値は 0.5 です。この場合、矢印はソース ノードとターゲット ノードの中間に配置されます。

ArrowPosition は有向グラフでのみ有効です。

有向エッジの矢印の表示切り替え。'on' または 'off' として指定します。有向グラフでは、既定値が 'on' で矢印が表示されますが、'off' の値を指定して有効エッジの矢印を非表示にすることができます。無向グラフでは、ShowArrows は常に 'off' です。

位置

すべて展開する

メモ

XDataYData は、各ノードが有効な (x,y) 座標をもつように共に指定しなければなりません。オプションとして、3 次元座標用に ZData を指定できます。

ノードの x 座標。グラフ内のノード数に等しい長さをもつベクトルとして指定します。

メモ

XDataYData は、各ノードが有効な (x,y) 座標をもつように共に指定しなければなりません。オプションとして、3 次元座標用に ZData を指定できます。

ノードの y 座標。グラフ内のノード数に等しい長さをもつベクトルとして指定します。

メモ

XDataYData は、各ノードが有効な (x,y) 座標をもつように共に指定しなければなりません。オプションとして、3 次元座標用に ZData を指定できます。

ノードの z 座標。グラフ内のノード数に等しい長さをもつベクトルとして指定します。

ノードとエッジのラベル

すべて展開する

ノードのラベル。数値ベクトルまたは文字ベクトルの cell 配列として指定します。NodeLabel の長さはグラフのノード数と等しくなければなりません。既定では、NodeLabel はグラフ ノードのノード ID を含む cell 配列です。

  • ノードに名前がない場合 (つまり G.Nodes に変数 Name が含まれない)、ノードのラベルは cell 配列に含まれる値 unique(G.Edges.EndNodes) になります。

  • 名前付きノードの場合、ノードのラベルは G.Nodes.Name' になります。

例: {'A', 'B', 'C'}

例: [1 2 3]

例: plot(G,'NodeLabels',G.Nodes.Name) はノードにその名前のラベルを付けます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | cell

ノードのラベルの選択モード。'auto' (既定) または 'manual' として指定します。NodeLabelMode'auto' として指定すると、NodeLabel にグラフ ノードのノード ID (数値ノード インデックスまたはノード名) が入力されます。NodeLabelMode'manual' を指定しても、NodeLabel の値は変更されません。

ノード ラベルの色。次の値のいずれかとして指定します。

  • RGB 3 成分または色名 — すべてのノード ラベルで指定した色が使用されます。

    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]

  • 行列 — 行はそれぞれ 1 つのノード ラベルの色を表す RGB 3 成分です。この行列のサイズは numnodes(G)3 列です。

例: plot(G,'NodeLabel',C,'NodeLabelColor','m') は、マゼンタのノード ラベルをもつグラフ プロットを作成します。

エッジのラベル。数値ベクトルまたは文字ベクトルの cell 配列として指定します。EdgeLabel の長さはグラフのエッジ数と等しくなければなりません。既定では、EdgeLabel は空の cell 配列です (エッジのラベルは表示されない)。

例: {'A', 'B', 'C'}

例: [1 2 3]

例: plot(G,'EdgeLabels',G.Edges.Weight) はグラフ エッジにその重みのラベルを付けます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | cell

エッジのラベルの選択モード。'manual' (既定) または 'auto' として指定します。EdgeLabelMode'auto' を指定すると、EdgeLabelG.Edges.Weight のエッジの重み (使用できる場合)、あるいはエッジ インデックス G.Edges(k,:) (重みが使用できない場合) が入力されます。EdgeLabelMode'manual' を指定しても、EdgeLabel の値は変更されません。

エッジ ラベルの色。次の値のいずれかとして指定します。

  • RGB 3 成分または色名 — すべてのエッジ ラベルで指定した色が使用されます。

    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]

  • 行列 — 行はそれぞれ 1 つのエッジ ラベルの色を表す RGB 3 成分です。この行列のサイズは numedges(G)3 列です。

例: plot(G,'EdgeLabel',C,'EdgeLabelColor','m') は、マゼンタのエッジ ラベルをもつグラフ プロットを作成します。

テキスト文字の解釈。次の値の 1 つとして指定します。

  • 'tex' — TeX マークアップのサブセットを使用して文字を解釈します。

  • 'latex' — LaTeX マークアップを使用して文字を解釈します。

  • 'none' — リテラル文字を表示します。

TeX マークアップ

MATLAB® では、既定で TeX マークアップのサブセットをサポートしています。TeX マークアップを使用して、上付き文字や下付き文字の追加、フォントのタイプや色の変更、テキストへの特殊文字の挿入を行うことができます。

修飾子の効果はテキストの末尾まで適用されます。上付き文字と下付き文字は例外であり、次の 1 文字または中かっこで囲まれた文字にのみ適用されます。Interpreter プロパティを 'tex' に設定した場合にサポートされる修飾子は次のとおりです。

修飾子説明
^{ }上付き文字'text^{superscript}'
_{ }下付き文字'text_{subscript}'
\bf太字フォント'\bf text'
\itイタリック フォント'\it text'
\sl斜体フォント (通常はイタリック フォントと同じ)'\sl text'
\rm標準フォント'\rm text'
\fontname{specifier}フォント名 — specifier をフォント ファミリの名前に置き換えます。これは他の修飾子と組み合わせて使用できます。'\fontname{Courier} text'
\fontsize{specifier}フォント サイズ — specifier をポイント単位の数値スカラーに置き換えます。'\fontsize{15} text'
\color{specifier}フォントの色 — specifier を、redgreenyellowmagentablueblackwhitegraydarkGreenorangelightBlue の色のいずれかに置き換えます。'\color{magenta} text'
\color[rgb]{specifier}フォントのカスタムの色 — specifier を RGB 3 成分に置き換えます。'\color[rgb]{0,0.5,0.5} text'

次の表に、Interpreter プロパティが 'tex' に設定されている場合にサポートされる特殊文字を示します。

文字列記号文字列記号文字列記号

\alpha

α

\upsilon

υ

\sim

~

\angle

\phi

\leq

\ast

*

\chi

χ

\infty

\beta

β

\psi

ψ

\clubsuit

\gamma

γ

\omega

ω

\diamondsuit

\delta

δ

\Gamma

Γ

\heartsuit

\epsilon

ϵ

\Delta

Δ

\spadesuit

\zeta

ζ

\Theta

Θ

\leftrightarrow

\eta

η

\Lambda

Λ

\leftarrow

\theta

θ

\Xi

Ξ

\Leftarrow

\vartheta

ϑ

\Pi

Π

\uparrow

\iota

ι

\Sigma

Σ

\rightarrow

\kappa

κ

\Upsilon

ϒ

\Rightarrow

\lambda

λ

\Phi

Φ

\downarrow

\mu

µ

\Psi

Ψ

\circ

º

\nu

ν

\Omega

Ω

\pm

±

\xi

ξ

\forall

\geq

\pi

π

\exists

\propto

\rho

ρ

\ni

\partial

\sigma

σ

\cong

\bullet

\varsigma

ς

\approx

\div

÷

\tau

τ

\Re

\neq

\equiv

\oplus

\aleph

\Im

\cup

\wp

\otimes

\subseteq

\oslash

\cap

\in

\supseteq

\supset

\lceil

\subset

\int

\cdot

·

\o

ο

\rfloor

\neg

¬

\nabla

\lfloor

\times

x

\ldots

...

\perp

\surd

\prime

´

\wedge

\varpi

ϖ

\0

\rceil

\rangle

\mid

|

\vee

\langle

\copyright

©

LaTeX マークアップ

LaTeX マークアップを使用するには、Interpreter プロパティを 'latex' に設定します。テキストをドル記号で囲みます。たとえば、インライン モードでは '$\int_1^{20} x^2 dx$'、表示モードでは '$$\int_1^{20} x^2 dx$$' を使用します。

テキストは LaTeX の既定のフォント スタイルで表示され、FontNameFontWeightFontAngle のプロパティは無視されます。フォント スタイルを変更するには、LaTeX マークアップを使用します。

LaTeX インタープリターで使用できるテキストの最大サイズは 1200 文字です。

LaTeX システムの詳細については、LaTeX プロジェクトの Web サイト (https://www.latex-project.org/) を参照してください。

フォント

すべて展開する

ノード ラベルのフォント名。サポートされているフォント名または 'FixedWidth' として指定します。ラベルを正しく表示および印刷するには、システムでサポートされているフォントを選択しなければなりません。既定のフォントは、特定のオペレーティング システムとロケールによって異なります。たとえば、英語版の Windows® および Linux® システムでは、既定で Helvetica フォントが使用されます。

どのロケールでもテキストが整って見える固定幅のフォントを使用するには、'FixedWidth' を指定します。

例: 'Cambria'

ノード ラベルのフォント サイズ。正の数値、または正の数値のベクトルとして指定します。NodeFontSize がベクトルの場合、各要素は 1 つのノード ラベルのフォント サイズを指定します。

ノード ラベルのテキストの太さ。'normal' または 'bold' として指定するか、各ノードについて 'normal' または 'bold' を指定する string ベクトルまたは文字ベクトルの配列として指定します。

  • 'bold'標準よりも太い文字

  • 'normal' — 各フォントで定義されている標準の太さ

すべてのフォントに太字フォントがあるとは限りません。

データ型: cell | char | string

ノード ラベルのテキストの文字の傾斜。'normal' または 'italic' として指定するか、各ノードについて 'normal' または 'italic' を指定する string ベクトルまたは文字ベクトルの配列として指定します。

  • 'italic'"文字の傾斜あり"

  • 'normal' — 文字の傾斜なし

すべてのフォントに両方のフォント スタイルがあるとは限りません。

データ型: cell | char | string

エッジ ラベルのフォント名。サポートされているフォント名または 'FixedWidth' として指定します。ラベルを正しく表示および印刷するには、システムでサポートされているフォントを選択しなければなりません。既定のフォントは、特定のオペレーティング システムとロケールによって異なります。たとえば、英語版の Windows および Linux システムでは、既定で Helvetica フォントが使用されます。

どのロケールでもテキストが整って見える固定幅のフォントを使用するには、'FixedWidth' を指定します。

例: 'Cambria'

エッジ ラベルのフォント サイズ。正の数値、または正の数値のベクトルとして指定します。EdgeFontSize がベクトルの場合、各要素は 1 つのエッジ ラベルのフォント サイズを指定します。

エッジ ラベルのテキストの太さ。'normal' または 'bold' として指定するか、各エッジに対して 'normal' または 'bold' を指定する string ベクトルまたは文字ベクトルの cell 配列として指定します。

  • 'bold'標準よりも太い文字

  • 'normal' — 各フォントで定義されている標準の太さ

すべてのフォントに太字フォントがあるとは限りません。

データ型: cell | char | string

エッジ ラベルのテキストの文字の傾斜。'normal' または 'italic' として指定するか、各エッジに対して 'normal' または 'italic' を指定する string ベクトルまたは文字ベクトルの cell 配列として指定します。

  • 'italic'"文字の傾斜あり"

  • 'normal' — 文字の傾斜なし

すべてのフォントに両方のフォント スタイルがあるとは限りません。

データ型: cell | char | string

凡例

すべて展開する

凡例によって使用されるテキスト。文字ベクトルとして指定します。このテキストは GraphPlot のアイコンの隣に表示されます。

例: 'Text Description'

テキストを複数行にする場合、sprintf を使用して改行文字 \n を含む文字ベクトルを作成します。

例: sprintf('line one\nline two')

あるいは、関数 legend を使用して凡例テキストを指定することもできます。

  • 関数 legend の入力引数としてテキストを指定した場合、凡例には指定されたテキストが使用され、DisplayName プロパティが同じ値に設定されます。

  • 関数 legend の入力引数としてテキストを指定しない場合、凡例には DisplayName プロパティのテキストが使用されます。DisplayName プロパティにテキストが含まれていない場合は、凡例で文字ベクトルが生成されます。この文字ベクトルは 'dataN' の形式になります。ここで、N は、凡例エントリのリスト内の位置を基に GraphPlot オブジェクトに割り当てられる数字です。

既存の凡例内でこの文字ベクトルを対話的に編集した場合、MATLAB は DisplayName プロパティを編集後の文字ベクトルに更新します。

このプロパティは読み取り専用です。

凡例アイコンの表示スタイル。Annotation オブジェクトとして返されます。このオブジェクトを使用して GraphPlot を凡例に含めたり凡例から除外したりします。

  1. Annotation プロパティをクエリして Annotation オブジェクトを取得します。

  2. Annotation オブジェクトの LegendInformation プロパティをクエリして LegendEntry オブジェクトを取得します。

  3. LegendEntry オブジェクトの IconDisplayStyle プロパティを次のいずれかの値に指定します。

    • 'on' — 凡例に 1 つのエントリとして GraphPlot オブジェクトを含めます (既定値)。

    • 'off' — 凡例に GraphPlot オブジェクトを含めません。

    • 'children' — GraphPlot オブジェクトの子のみを個別のエントリとして凡例に含めます。

凡例が既に存在するときに IconDisplayStyle 設定を変更した場合、表示を更新するためには legend を呼び出さなければなりません。

対話機能

すべて展開する

可視性の状態。次の値のいずれかとして指定します。

  • 'on' — GraphPlot を表示します。

  • 'off' — GraphPlot を削除せずに非表示にします。非表示の GraphPlot オブジェクトのプロパティに引き続きアクセスできます。

uicontextmenu オブジェクトとして指定されるコンテキスト メニュー。このプロパティは、GraphPlot を右クリックしたときにコンテキスト メニューを表示するために使用します。関数 uicontextmenu を使用して、コンテキスト メニューを作成します。

メモ

PickableParts プロパティが 'none' に設定されている場合または HitTest プロパティが 'off' に設定されている場合には、このコンテキスト メニューは表示されません。

選択状態。次の値の 1 つとして指定します。

  • 'on' — 選択されています。プロット編集モードで GraphPlot をクリックした場合、MATLAB は Selected プロパティを 'on' に設定します。SelectionHighlight プロパティも 'on' に設定されている場合、MATLAB は GraphPlot の周囲に選択ハンドルを表示します。

  • 'off' — 選択されていません。

選択時に選択ハンドルを表示。次の値の 1 つとして指定します。

  • 'on'Selected プロパティが 'on' に設定されているときに選択ハンドルを表示します。

  • 'off'Selected プロパティが 'on' に設定されている場合でも選択ハンドルを表示しません。

コールバック

すべて展開する

マウスクリック コールバック。次の値のいずれかとして指定します。

  • 関数ハンドル

  • 関数ハンドルと追加の引数を含む cell 配列

  • ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)

このプロパティは、GraphPlot をクリックしたときにコードを実行するために使用します。関数ハンドルを使用してこのプロパティを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。

  • GraphPlot オブジェクト — コールバック関数内から GraphPlot オブジェクトのプロパティにアクセスできます。

  • イベント データ — このプロパティに関してはこの引数は空です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (~) に置換します。

関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、コールバック定義を参照してください。

メモ

PickableParts プロパティが 'none' に設定されている場合または HitTest プロパティが 'off' に設定されている場合には、このコールバックは実行されません。

例: @myCallback

例: {@myCallback,arg3}

作成コールバック。次の値の 1 つとして指定します。

  • 関数ハンドル

  • 関数ハンドルと追加の引数を含む cell 配列

  • ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)

このプロパティは、GraphPlot の作成時にコードを実行するために使用します。既存の GraphPlot に CreateFcn プロパティを設定しても効果はありません。このプロパティの既定値を定義するか、GraphPlot の作成中に Name,Value のペアを使用してこのプロパティを定義しなければなりません。MATLAB は GraphPlot を作成し、そのプロパティをすべて設定した後でコールバックを実行します。

関数ハンドルを使用してこのコールバックを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。

  • GraphPlot オブジェクト — コールバック関数内から GraphPlot オブジェクトのプロパティにアクセスできます。ルートの CallbackObject プロパティを介して GraphPlot オブジェクトにアクセスすることもできます。このプロパティは関数 gcbo を使用してクエリできます。

  • イベント データ — このプロパティに関してはこの引数は空です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (~) に置換します。

関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、コールバック定義を参照してください。

例: @myCallback

例: {@myCallback,arg3}

削除コールバック。次の値の 1 つとして指定します。

  • 関数ハンドル

  • 関数ハンドルと追加の引数を含む cell 配列

  • ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)

このプロパティを使用して、GraphPlot を削除する際にコードを実行します。MATLAB は GraphPlot を破棄する前にコールバックを実行するため、コールバックはそのプロパティ値にアクセスできます。

関数ハンドルを使用してこのコールバックを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。

  • GraphPlot オブジェクト — コールバック関数内から GraphPlot オブジェクトのプロパティにアクセスできます。ルートの CallbackObject プロパティを介して GraphPlot オブジェクトにアクセスすることもできます。このプロパティは関数 gcbo を使用してクエリできます。

  • イベント データ — このプロパティに関してはこの引数は空です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (~) に置換します。

関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、コールバック定義を参照してください。

例: @myCallback

例: {@myCallback,arg3}

コールバック実行制御

すべて展開する

コールバックの割り込み。'on' または 'off' として指定します。Interruptible プロパティは実行中のコールバックが割り込み可能かどうかを決定します。

メモ

次の 2 つのコールバックの状態について考慮する必要があります。

  • "実行中" コールバックは、現在実行しているコールバックです。

  • "割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。

MATLAB がコールバックを呼び出すたびに、そのコールバックは実行中のコールバックに割り込もうとします。実行中のコールバックを所有するオブジェクトの Interruptible プロパティが、割り込み可能かどうかを決定します。割り込みが許可されない場合は、割り込みコールバックを所有するオブジェクトの BusyAction プロパティが、そのコールバックを破棄するかキューに入れるかを決定します。

GraphPlot の ButtonDownFcn コールバックが実行中のコールバックである場合、Interruptible プロパティは別のコールバックがそこに割り込めるかどうかを決定します。

  • 'on' — 割り込み可能です。drawnowfiguregetframewaitforpause コマンドなどの、MATLAB が次にキューを処理するポイントで割り込みが発生します。

    • 実行中のコールバックにこれらいずれかのコマンドが含まれている場合、MATLAB はその場所でコールバックの実行を停止し、割り込みコールバックを実行します。割り込みコールバックが完了したときに MATLAB は実行中だったコールバックの実行を再開します。詳細については、コールバック実行の中断を参照してください。

    • 実行中のコールバックにこれらのコマンドが含まれていない場合、MATLAB はそのコールバックの実行を中断せずに終了させます。

  • 'off' — 割り込みできません。MATLAB は割り込みさせずに実行中のコールバックを終了させます。

コールバック キューイング。'queue' または 'cancel' として指定します。BusyAction プロパティは MATLAB による割り込みコールバックの実行の処理方法を決定します。

メモ

次の 2 つのコールバックの状態について考慮する必要があります。

  • "実行中" コールバックは、現在実行しているコールバックです。

  • "割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。

MATLAB がコールバックを呼び出すたびに、そのコールバックは実行中のコールバックに割り込もうとします。実行中のコールバックを所有するオブジェクトの Interruptible プロパティが、割り込み可能かどうかを決定します。割り込みが許可されない場合は、割り込みコールバックを所有するオブジェクトの BusyAction プロパティが、そのコールバックを破棄するかキューに入れるかを決定します。

GraphPlot の ButtonDownFcn コールバックが割り込み不可の実行中のコールバックに割り込もうとしている場合、BusyAction プロパティはそのコールバックを破棄するかキューに入れるかを決定します。BusyAction プロパティは次の値の 1 つとして指定します。

  • 'queue' — 割り込みコールバックをキューに入れ、実行中のコールバックが終了した後に処理されるようにします。これは既定の動作です。

  • 'cancel' — 割り込みコールバックを破棄します。

マウス クリック キャプチャ機能。次の値の 1 つとして指定します。

  • 'visible' — 表示されている場合にのみマウス クリックをキャプチャできます。Visible プロパティは、'on' に設定しなければなりません。クリックに対し GraphPlot が応答するか、あるいは先祖が応答するかについては、HitTest プロパティが決定します。

  • 'none' — マウス クリックをキャプチャしません。GraphPlot をクリックすると、Figure ウィンドウの現在のビュー内でその下にあるオブジェクトにクリックが渡されます。GraphPlot の HitTest プロパティには何の効果もありません。

キャプチャしたマウス クリックへの応答。次の値の 1 つとして指定します。

  • 'on' — GraphPlot の ButtonDownFcn コールバックをトリガーします。UIContextMenu プロパティが定義されている場合は、コンテキスト メニューを呼び出します。

  • 'off'HitTest プロパティが 'on' に設定されていて、マウス クリックを先祖がキャプチャできる PickableParts プロパティ値をもつ、最も近い GraphPlot の先祖のコールバックをトリガーします。

メモ

PickableParts プロパティは、GraphPlot オブジェクトがマウス クリックをキャプチャできるかどうかを決定します。キャプチャできない場合、HitTest プロパティは無効です。

このプロパティは読み取り専用です。

GraphPlot の削除状態。'on' または 'off' として返されます。MATLAB は、GraphPlot の削除関数が実行を開始したときに BeingDeleted プロパティを 'on' に設定します (DeleteFcn プロパティを参照)。BeingDeleted プロパティは、GraphPlot が存在しなくなるまで 'on' に設定されたままとなります。

BeingDeleted プロパティの値をチェックして、GraphPlot のクエリや変更を行う前に、それが削除されるところではないことを確認してください。

親/子

すべて展開する

GraphPlot の親。axes オブジェクト、グループ オブジェクトまたは変換オブジェクトとして指定します。

GraphPlot には子はありません。このプロパティは設定できません。

親の Children プロパティ内での GraphPlot オブジェクト ハンドルの可視性。次の値のいずれかとして指定します。

  • 'on' — GraphPlot オブジェクト ハンドルは常に表示されます。

  • 'off' — GraphPlot オブジェクト ハンドルは常に非表示です。このオプションは、他の関数による UI の意図しない変更を防止するために役立ちます。HandleVisibility'off' に設定すると、その関数の実行中にハンドルが一時的に非表示になります。

  • 'callback' — GraphPlot オブジェクト ハンドルはコールバック内から、あるいはコールバックにより呼び出される関数から参照できます。しかし、コマンド ラインから呼び出される関数からは参照できません。このオプションを使用すると、コマンド ラインからの GraphPlot へのアクセスがブロックされますが、コールバック関数からのアクセスは許可されます。

GraphPlot オブジェクトが親の Children プロパティ内にリストされない場合、オブジェクト階層の検索またはハンドル プロパティのクエリによってオブジェクト ハンドルを取得する関数は、そのオブジェクト ハンドルを返しません。このような関数には、getfindobjgcagcfgconewplotclaclfclose があります。

非表示のオブジェクト ハンドルは有効なままです。ルートの ShowHiddenHandles プロパティを 'on' に設定すると、HandleVisibility プロパティの設定にかかわらず、すべてのオブジェクト ハンドルがリストされます。

識別子

すべて展開する

このプロパティは読み取り専用です。

グラフィックス オブジェクトのタイプ。'graphplot' として返されます。プロット階層内にある特定のタイプのすべてのオブジェクトを検出するためにこのプロパティを使用できます。たとえば findobj を使用してタイプを検索します。

GraphPlot に関連付けるタグ。文字ベクトルとして指定します。タグはグラフィックス オブジェクトを識別する手段を提供します。プロット階層内にある特定のタグをもつすべてのオブジェクトを検出するためにこのプロパティを使用できます。たとえば findobj を使用してタグを検索します。

例: 'January Data'

データ型: char

GraphPlot オブジェクトに関連付けるデータ。スカラー、ベクトル、行列、cell 配列、文字配列、テーブルまたは構造体として指定します。MATLAB はこのデータを使用しません。

複数のデータセットを関連付ける場合またはデータにフィールド名を付加する場合は、関数 getappdata および setappdata を使用します。

例: 1:100

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | struct | table | cell

R2015b で導入