Возможно ли дальнейшее перемещение подграфов в графике

Я рисую двудольный граф в graphviz, и я хочу, чтобы у него было два столбца узлов, соединенных прямыми линиями (чтобы соответствовать стилю, используемому в другом месте). В основном я могу получить то, что хочу (см. Изображение), но столбцы слишком близки друг к другу, что делает ненужным упорство на краях.

Я попытался добавить соединение с очень низким весом между двумя верхними узлами в надежде, что он сдвинет два подграфа друг от друга, но это не сработает (и часто испортит остальную часть макета). Есть ли способ перемещения правого столбца узлов дальше вправо.

Вот пример, показывающий проблему, которую я вижу

и вот код, который я использовал для создания этого графа

graph G {
 splines=false;
 node[shape=circle, style=filled]
 subgraph cluster_1 {
 subgraph cluster_1r {
 a12 [label="a",fillcolor=lightgrey]
 b12 [label="b",fillcolor=lightgrey]
 c12 [label="c",fillcolor=lightgrey]
 d12 [label="d",fillcolor=lightgrey]
 e12 [label="e",fillcolor=lightgrey]
 a12--b12--c12--d12--e12 [style=invis]
 }
 subgraph cluster_1l {
 a11 [label="a",fillcolor=white]
 b11 [label="b",fillcolor=white]
 c11 [label="c",fillcolor=white]
 d11 [label="d",fillcolor=white]
 e11 [label="e",fillcolor=white]
 a11--b11--c11--d11--e11 [style=invis]
 }
 c11--a12 [constraint=false]
 c11--b12 [constraint=false]
 d11--b12 [constraint=false]
 e11--a12 [constraint=false]
 e11--b12 [constraint=false]
 }
}
1 ответ

Добавление невидимого node между двумя столбцами отлично работает. В основном я добавил это

subgraph cluster_1m {
 color=invis; 
 a12m [style=invisible]
 }

между двумя подграфами. Это кажется довольно грубым, поэтому можно приветствовать более элегантные решения.

licensed under cc by-sa 3.0 with attribution.