биообъект диаграмм

Структура данных, содержащая типичные взаимосвязанные данные раньше, реализовывала ориентированного графа

Описание

Биообъект диаграмм является структурой данных, содержащей типичные взаимосвязанные данные, используемые, чтобы реализовать ориентированного графа. Узлы представляют белки, гены или любую другую биологическую сущность, и ребра представляют взаимодействия, зависимости или любое другое отношение между узлами. Биообъект диаграмм также хранит информацию, такую как свойства цвета и характеристики текстовой метки, используемые, чтобы создать 2D визуализацию графика.

Вы создаете биообъект диаграмм с помощью функции конструктора Object biograph. Можно просмотреть графическое представление биообъекта диаграмм с помощью метода view.

Сводные данные метода

Следующее является методами биообъекта диаграмм:

allshortestpaths (биографик)Найдите все кратчайшие пути в биообъекте диаграмм
conncomp (биографик)Найдите строго или слабо соединенные компоненты в биообъекте диаграмм
dolayout (биографик)Вычислите положения узла и траектории ребра
доберитесь (биографик)Получите информацию о биообъекте диаграмм
getancestors (биографик)Найдите предков узла в биообъекте диаграмм
getdescendants (биографик)Найдите потомков узла в биообъекте диаграмм
getedgesbynodeid (биографик)Получите указатели на ребра в биообъекте диаграмм
getmatrix (биографик)Делайте пересадку матрица от биообъекта диаграмм
getnodesbyid (биографик)Получите указатели на узлы
getrelatives (биографик)Найдите родственников узла в биообъекте диаграмм
getweightmatrix (биографик)Делайте пересадку матрица с весами от биообъекта диаграмм
isdag (биографик)Протестируйте на циклы в биообъекте диаграмм
изоморфизм (биографик)Найдите изоморфизм между двумя биообъектами диаграмм
isspantree (биографик)Определите, охватывает ли дерево, созданное из биообъекта диаграмм, дерево
maxflow (биографик)Вычислите максимальный поток в биообъекте диаграмм
minspantree (биографик)Найдите минимальное дерево охвата в биообъекте диаграмм
установите (биографик)Установите свойство биообъекта диаграмм
shortestpath (биографик)Решите проблему кратчайшего пути в биообъекте диаграмм
topoorder (биографик)Выполните топологический вид направленного графа без петель, извлеченного от биообъекта диаграмм
пересеките (биографик)Пересеките биообъект диаграмм следующими смежными узлами
просмотрите (биографик)Чертите фигуру от биообъекта диаграмм

Следующее является методами объекта узла:

getancestors (биографик)Найдите предков узла в биообъекте диаграмм
getdescendants (биографик)Найдите потомков узла в биообъекте диаграмм
getrelatives (биографик)Найдите родственников узла в биообъекте диаграмм

Сводные данные свойства

Биообъект диаграмм содержит два вида объектов, объектов узла и объектов ребра, которые имеют их собственные свойства. Для списка свойств объектов узла и объектов ребра, см. следующие таблицы.

Свойства биообъекта диаграмм

СвойствоОписание
ID Вектор символов, чтобы идентифицировать биообъект диаграмм. Значением по умолчанию является ''.
LabelВектор символов, чтобы маркировать биообъект диаграмм. Значением по умолчанию является ''.
DescriptionВектор символов, который описывает биообъект диаграмм. Значением по умолчанию является ''.
LayoutType

Вектор символов, который задает алгоритм для механизма размещения. Выбор:

  • 'hierarchical' (значение по умолчанию) — Использование топологический порядок графика присвоить уровни, и затем располагает узлы сверху донизу при минимизации пересекающихся ребер.

  • 'radial' — Использует топологический порядок графика присвоить уровни, и затем располагает узлы изнутри к за пределами круга, при минимизации пересекающихся ребер.

  • 'equilibrium' — Вычисляет размещение путем минимизации энергии в динамической пружинной системе.

EdgeType

Вектор символов, который задает, как ребра отображаются. Выбор:

  • 'straight'

  • 'curved' (значение по умолчанию)

  • 'segmented'

Примечание

Изогнутые или сегментированные ребра происходят только при необходимости, чтобы избежать преграды узлами. Биообъекты диаграмм с LayoutType, равным 'equilibrium' или 'radial', не могут произвести изогнутые или сегментированные ребра.

Scale Положительное число, которое постмасштабирует координаты узла. Значением по умолчанию является 1.
LayoutScaleПоложительное число, которое масштабирует размер узлов прежде, чем вызвать механизм размещения. Значением по умолчанию является 1.
EdgeTextColorТрехэлементный числовой вектор значений RGB. Значением по умолчанию является [0, 0, 0], который задает черный.
EdgeFontSizeПоложительное число, которое устанавливает размер шрифта ребра в точках. Значением по умолчанию является 8.
ShowArrowsУправляет отображением стрелок с ребрами. Выбором является 'on' (значение по умолчанию) или 'off'.
ArrowSizeПоложительное число, которое устанавливает размер стрелок в точках. Значением по умолчанию является 8.
ShowWeightsУправляет отображением текста, указывающего на вес ребер. Выбором является 'on' или 'off' (значение по умолчанию).
ShowTextInNodes

Вектор символов, который задает свойство узла, раньше маркировал узлы, когда вы отображаете биообъект диаграмм с помощью метода view. Выбор:

  • Метка Использует свойство Label объекта узла (значение по умолчанию).

  • 'ID' — Использует свойство ID объекта узла.

  • 'None'

NodeAutoSize

Средства управления, предварительно вычисляющие размер узла прежде, чем вызвать механизм размещения. Выбором является 'on' (значение по умолчанию) или 'off'.

Примечание

Установите его на off, если вы хотите применить различные размеры узла путем изменения свойства Size.

NodeCallbackПользовательский коллбэк для всех узлов. Введите имя функции, указателя на функцию или массива ячеек с несколькими указателями на функцию. После использования view функционируют, чтобы отобразить биообъект диаграмм в Средстве просмотра Биографика, можно дважды кликнуть узел, чтобы активировать первый коллбэк, или щелкнуть правой кнопкой и выбрать коллбэк, чтобы активироваться. Значением по умолчанию является анонимная функция, @(node) inspect(node), который отображает диалоговое окно Property Inspector.
EdgeCallbackПользовательский коллбэк для всех ребер. Введите имя функции, указателя на функцию или массива ячеек с несколькими указателями на функцию. После использования функции view, чтобы отобразить биообъект диаграмм в Средстве просмотра Биографика, можно щелкнуть правой кнопкой и выбрать коллбэк, чтобы активироваться. Значением по умолчанию является анонимная функция, @(edge) inspect(edge), который отображает диалоговое окно Property Inspector.
CustomNodeDrawFcnУказатель на функцию к индивидуально настраиваемой функции, чтобы чертить узлы. Значением по умолчанию является [].
NodesВектор-столбец только для чтения с указателями на объекты узла биообъекта диаграмм. Размер вектора является количеством узлов. Для свойств объектов узла смотрите Свойства Объекта узла.
EdgesВектор-столбец только для чтения с указателями на объекты ребра биообъекта диаграмм. Размер вектора является количеством ребер. Для свойств объектов ребра смотрите Свойства Объекта Ребра.

Свойства объекта узла

СвойствоОписание
IDВектор символов задал, когда биообъект диаграмм создается, или входным параметром NodeIDs или внутренне функцией конструктора biograph. Можно изменить это свойство с помощью метода set, но ID каждого объекта узла должен быть уникальным.
LabelВектор символов для маркировки узла, когда вы отображаете биообъект диаграмм с помощью метода view. Значением по умолчанию является ''.
DescriptionВектор символов, который описывает узел. Значением по умолчанию является ''.
PositionДвухэлементный числовой вектор x - и y - координаты, например, [150, 150]. Если вы не задаете это свойство, значением по умолчанию является первоначально [], то, когда алгоритмы макета выполняются, это становится двухэлементным числовым вектором x - и y - координаты, вычисленные механизмом размещения.
Shape

Вектор символов, который задает форму узлов. Выбор:

  • 'box' (значение по умолчанию)

  • 'ellipse'

  • 'circle'

  • 'rect' или 'rectangle'

  • 'diamond'

  • 'trapezium'

  • 'invtrapezium'

  • 'house'

  • 'invhouse'

  • 'parallelogram'

Size Двухэлементный числовой вектор, вычисленный прежде, чем вызвать механизм размещения с помощью фактического размера шрифта и формы узла. Значением по умолчанию является [10, 10].
Color Трехэлементный числовой вектор значений RGB, который задает цвет заливки узла. Значением по умолчанию является [1, 1, 0.7], который задает желтый.
LineWidth Положительное число. Значением по умолчанию является 0.5.
LineColor Трехэлементный числовой вектор значений RGB, который задает цвет контура узла. Значением по умолчанию является [0.3, 0.3, 1], который задает синий.
FontSize Положительное число, которое устанавливает размер шрифта узла в точках. Значением по умолчанию является 8.
TextColor Трехэлементный числовой вектор значений RGB, который задает цвет меток узла. Значением по умолчанию является [0, 0, 0], который задает черный.
UserDataРазные, пользовательские данные, которые вы хотите сопоставить с узлом. Узел не использует это свойство, но можно получить доступ и задать его с помощью функций set и get. Значением по умолчанию является [].

Свойства объекта ребра

СвойствоОписание
ID Вектор символов автоматически сгенерировал от узла ID s, когда биообъект диаграмм создается функцией конструктора biograph. Можно изменить это свойство с помощью метода set, но каждый объект ребра ID должен быть уникальным.
Label Вектор символов для маркировки ребра. Значением по умолчанию является ''.
Description Вектор символов, который описывает ребро. Значением по умолчанию является ''.
WeightЗначение, которое представляет вес (стоимость, расстояние, длина или способность) сопоставленный с ребром. Значением по умолчанию является 1.
LineWidth Положительное число. Значением по умолчанию является 1.
LineColor Трехэлементный числовой вектор значений RGB, который задает цвет ребра. Значением по умолчанию является [0.5, 0.5, 0.5], который задает серый.
UserDataРазные, пользовательские данные, которые вы хотите сопоставить с ребром. Ребро не использует это свойство, но можно получить доступ и задать его с помощью функций set и get. Значением по умолчанию является [].

Примеры

свернуть все

Этот пример показывает, как создать биообъект диаграмм, доступ, и обновить его свойства.

Создайте биообъект диаграмм с пользовательскими идентификаторами узла.

cm = [0 1 1 0 0;1 0 0 1 1;1 0 0 0 0;0 0 0 0 1;1 0 1 0 0];
ids = {'M30931','L07625','K03454','M27323','M15390'};
bg1 = biograph(cm,ids)
Biograph object with 5 nodes and 9 edges.

Задайте свойство ID объекта.

bg1.ID = 'mybg';

Используйте функцию get, чтобы отобразить идентификаторы узла.

get(bg1.nodes,'ID')
ans =

  5x1 cell array

    {'M30931'}
    {'L07625'}
    {'K03454'}
    {'M27323'}
    {'M15390'}

Отобразите все свойства и их текущие значения 5-го узла и 5-го ребра объекта.

bg1.nodes(5)
             ID: 'M15390'
          Label: ''
    Description: ''
       Position: []
          Shape: 'box'
           Size: [10 10]
          Color: [1 1 0.7000]
      LineWidth: 1
      LineColor: [0.3000 0.3000 1]
       FontSize: 9
      TextColor: [0 0 0]
       UserData: []

bg1.edges(5)
             ID: 'L07625 -> M15390'
          Label: ''
    Description: ''
         Weight: 1
      LineWidth: 0.5000
      LineColor: [0.5000 0.5000 0.5000]
       UserData: []

Установите свойство LineWidth 5-го узла к 2.

bg1.nodes(5).LineWidth = 2.0;
bg1.nodes(5)
             ID: 'M15390'
          Label: ''
    Description: ''
       Position: []
          Shape: 'box'
           Size: [10 10]
          Color: [1 1 0.7000]
      LineWidth: 2
      LineColor: [0.3000 0.3000 1]
       FontSize: 9
      TextColor: [0 0 0]
       UserData: []

Кроме того, используйте функцию getnodesbyid, чтобы создать указатель для 5-го узла и установить его свойство Shape 'кружиться'.

nh1 = getnodesbyid(bg1,'M15390')
             ID: 'M15390'
          Label: ''
    Description: ''
       Position: []
          Shape: 'box'
           Size: [10 10]
          Color: [1 1 0.7000]
      LineWidth: 2
      LineColor: [0.3000 0.3000 1]
       FontSize: 9
      TextColor: [0 0 0]
       UserData: []

nh1.Shape = 'circle';

Задайте свойство LineColor 5-го ребра.

bg1.edges(5).LineColor = [0.7 0.0 0.1];

Кроме того, используйте getedgesbynodeid, чтобы получить handel к ребру путем обеспечения исходного идентификатора узла и идентификатора узла приемника.

eh1 = getedgesbynodeid(bg1,'L07625','M15390')
             ID: 'L07625 -> M15390'
          Label: ''
    Description: ''
         Weight: 1
      LineWidth: 0.5000
      LineColor: [0.7000 0 0.1000]
       UserData: []

Используйте указатель, чтобы задать свойство LineWidth или любые другие свойства ребра.

eh1.LineWidth = 2.0;

Просмотрите биообъект диаграмм.

view(bg1)

Представленный в R2006b