Graphviz: создание ребер, не влияющих на иерархию узлов


Я добавляю ребра (зеленые) к графу, что создает иерархию узлов. Как добавить второстепенные ребра (красные), не влияющие на иерархию?

Введите описание изображения здесь

Edit: это библиотека Qt graphViz.

2 3

2 ответа:

Если вы хотите, чтобы преимущество не влияло на рейтинг, вы можете просто установить constraint атрибут false:

Если значение false, то ребро не используется для ранжирования узлов.

Пример:

node1 -> node2 [constraint=false];

Вам нужно {rank = same; <node names> }, например

digraph G {
    a -> b
    a -> c
    c -> d
    c -> e
    a -> f
    c -> f
}

... дает:

Введите описание изображения здесь

... в то время как

digraph G {
    a -> b
    a -> c
    c -> d
    c -> e
    a -> f
    c -> f
    { rank=same; c f }
}

... дает:

Введите описание изображения здесь