2015-05-18 2 views
1


Я использую DOT для автоматического создания связей узлов из некоторых технических спецификаций. Проблема, с которой я сталкиваюсь, заключается в том, что в некоторых случаях у меня одинаковые множественные переходы, а DOT рисует все из них. Это похоже на функцию больше, чем ошибку в DOT, но мне нужно только 1 уникальное ребро от узла A до B, а не от нескольких.Объединить 2 края, которые имеют одну и ту же голову и хвост В DOT

digraph "Main" { 
A -> B 
A -> B 
} 

DOT рисует 2 ребра для этих 2 переходов, и мне нужно всего лишь нарисовать его один раз.
Один из подходов состоит в том, чтобы сделать парсер этих спецификаций и игнорировать несколько идентичных переходов, которые должны быть записаны в файле doc, но я предполагаю, что это можно легко исправить с помощью атрибута edge. Я прочитал документацию и ничего не нашел о таких атрибутах.
Спасибо

ответ

3

концентрация Край может помочь

digraph "Main" { concentrate=true 
    A -> B 
    A -> B 
} 

enter image description here

Имейте в виду, что концентрация не будет работать на краях с этикетками, даже если метки совпадают.

digraph "Main" { concentrate=true 
    A -> B [label=a] 
    A -> B [label=a] 
} 

enter image description here

Смежные вопросы