グラフ プロット データ ヒントに対するノード プロパティの追加
この例では、GraphPlot
データ ヒントをカスタマイズして、グラフの追加ノード プロパティを表示する方法を説明します。
データ ヒントを伴う GraphPlot
オブジェクトのプロット
ランダムな有向グラフの GraphPlot
グラフィックス オブジェクトを作成します。グラフに wifi
ノード プロパティを 1 つ追加します。
rng default
G = digraph(sprandn(20, 20, 0.05));
G.Nodes.wifi = randi([0 1], 20, 1) == 1;
h = plot(G);
グラフにデータ ヒントを追加します。データ ヒントを使うと、グラフ プロット内でノードを選択して、そのノードのプロパティを表示できます。
dt = datatip(h,4,3);
既定では、無向グラフのデータ ヒントにはノード番号と次数が表示されます。有向グラフの場合、表示にはノード番号、入次数、および出次数が含まれます。
データ ヒントの既存データのカスタマイズ
適切なオブジェクト プロパティのデータ行を追加、編集、削除して、グラフィックス オブジェクトのデータ ヒントの表示をカスタマイズできます。この GraphPlot
オブジェクトの場合:
GraphPlot
オブジェクトのハンドルはh
です。h.DataTipTemplate
プロパティには、データ ヒントの表示を制御するオブジェクトが含まれます。h.DataTipTemplate.DataTipRows
プロパティは、データ ヒントのデータをDataTipTextRow
オブジェクトとして保持します。各
DataTipTextRow
オブジェクトにはLabel
とValue
の各プロパティがあります。これらのプロパティを変更して、データ ヒントに表示されるラベルやデータを調整できます。
"City" と表示されるよう、データ ヒントの Node の行のラベルを変更します。
h.DataTipTemplate.DataTipRows(1).Label = "City";
これで、データ ヒントには都市番号が表示されます。
データ ヒントへのデータの追加
関数 dataTipTextRow
は、DataTipRows
プロパティに挿入できるオブジェクトとして新しいデータ行を作成します。dataTipTextRow
を使用して、グラフの G.Nodes.wifi
プロパティの値を参照する、"WiFi" というラベルが付けられたデータ ヒントの新しいデータ行を作成します。このデータ ヒントの行を、最後の行として DataTipRows
プロパティに追加します。
row = dataTipTextRow('WiFi',G.Nodes.wifi);
h.DataTipTemplate.DataTipRows(end+1) = row;
これで、データ ヒントの表示には各ノードの Wi-Fi® 値が含められます。
データ ヒントからのデータの削除
データ ヒントからデータ行を削除するには、DataTipRows
プロパティにインデックスを指定し、その行に空行列 []
を代入することができます。これは、行列から行や列を削除するために使用する方法と同じです。
データ ヒントから入次数と出次数の行を削除します。これらはデータ ヒント表示の 2 行目と 3 行目に現れるため、DataTipRows
プロパティの 2 行目と 3 行目に対応します。
h.DataTipTemplate.DataTipRows(2:3) = [];
これで、データ ヒントには都市番号と Wi-Fi の状態のみが表示されます。
参考
datatip
| graph
| digraph
| DataTipTemplate のプロパティ