Как создать несколько ребер из одного поля записи Graphviz? - PullRequest
2 голосов
/ 15 августа 2011

Наличие одиночных ребер происходит из поля записи Graphviz очень просто и легко контролируется через порты и точки компаса.

Мне нужно, чтобы несколько ребер происходили из одного поля записи. Синтаксис языка DOT не поддерживает это. Подграфы могут работать для меня, но описание записей - действительно лучшее представление записей данных.

1 Ответ

3 голосов
/ 15 августа 2011

имеют несколько ребер, происходящих из одного поля записи

Я не совсем уверен, почему синтаксис языка точек не позволяет этого. Например:

digraph g{
  r[label="<f0> left|<f1> middle|<f2> right", shape=record];
  r:f0 -> {a;b;};
  r:f2 -> c;
  r:f2 -> d;
}

Поля f0 и f2 имеют несколько исходящих ребер.

enter image description here

Кстати, хотя формы записи все еще работают, похоже, что HTML-подобные метки заменяют их. С веб-сайта graphivz :

Форма, основанная на записях, была в значительной степени заменена и значительно обобщается HTML-подобными метками. То есть вместо использования shape = record, можно рассмотреть использование shape = none и HTML-подобный этикетка.

...