exponenta event banner

Добавление свойств узла к советам по данным графика

В этом примере показано, как настроить GraphPlot советы по отображению дополнительных свойств узла графика.

График GraphPlot объект с подсказкой данных

Создать GraphPlot графический объект для случайного направленного графа. Добавить дополнительное свойство узла wifi к графу.

rng default
G = digraph(sprandn(20, 20, 0.05));
G.Nodes.wifi = randi([0 1], 20, 1) == 1;
h = plot(G);

Figure contains an axes. The axes contains an object of type graphplot.

Добавьте на график подсказку данных. Подсказка данных позволяет выбирать узлы на графике и просматривать свойства узлов.

dt = datatip(h,4,3);

Figure contains an axes. The axes contains an object of type graphplot.

По умолчанию в подсказках по данным для неориентированного графика отображаются номер узла и степень. Для направленных графиков отображение включает номер узла, степень и степень отклонения.

Настройка существующих данных в подсказке

Можно настроить отображение подсказок по данным для графических объектов путем добавления, редактирования или удаления строк данных из соответствующих свойств объекта. Для этого GraphPlot объект:

  • GraphPlot дескриптор объекта - h.

  • h.DataTipTemplate содержит объект, который управляет отображением подсказок по данным.

  • h.DataTipTemplate.DataTipRows свойство содержит данные для подсказок данных как DataTipTextRow объекты.

  • Каждый DataTipTextRow объект имеет Label и Value свойства. Путем изменения этих свойств можно настроить метку или данные, отображаемые в подсказке данных.

Измените метку для строки Node в подсказке данных так, чтобы она отображалась как «City».

h.DataTipTemplate.DataTipRows(1).Label = "City";

Figure contains an axes. The axes contains an object of type graphplot.

В подсказке теперь отображается номер города.

Добавить данные в подсказку

dataTipTextRow создает новую строку данных в качестве объекта, который может быть вставлен в DataTipRows собственность. Использовать dataTipTextRow чтобы создать новую строку данных для подсказки данных с меткой «WiFi», которая ссылается на значения в G.Nodes.wifi свойство графа. Добавить эту строку подсказки данных в DataTipRows свойство в качестве последней строки.

row = dataTipTextRow('WiFi',G.Nodes.wifi);
h.DataTipTemplate.DataTipRows(end+1) = row;

Figure contains an axes. The axes contains an object of type graphplot.

Теперь дисплей всплывающих подсказок включает значение WiFi для каждого узла.

Удалить данные из подсказки данных

Чтобы удалить строки данных из подсказки данных, можно индексировать в DataTipRows и назначить строкам пустую матрицу []. Этот метод можно использовать для удаления строк или столбцов из матрицы.

Удалите строки в градусах и вне степеней из подсказки данных. Поскольку они отображаются как вторая и третья строки на дисплее подсказки данных, они соответствуют второй и третьей строкам DataTipRows собственность.

h.DataTipTemplate.DataTipRows(2:3) = [];

Figure contains an axes. The axes contains an object of type graphplot.

На дисплее подсказки теперь отображается только номер города и статус WiFi.

См. также

| | |

Связанные темы