2016-11-17 2 views
1

Я новичок в GraphViz, и я пытаюсь получить следующий графическогоКак получить узлы с длинными этикетками в соответствии

graph without labels

Однако, когда я хочу, чтобы добавить метки, расположение внутри первого кластера разрушается. Если я изменил ограничение, макет в первом кластере будет таким же, как если бы ребро от первого кластера до узла D изменилось. Здесь изображение с примером этикетки

graph with labels

Вот код для графа с меткой, как Newbee я мог бы включены некоторые избыточный код:


    digraph Name { 
    graph [fontsize=10 fontname="Verdana" compound=true]; 
    { rank=same; 
    0 [style=invis];
01 [style = invis]; 02 [style=invis]; 0-> 01 -> 02 [style=invis]; }

subgraph cluster1 { compound=true ; fontsize = 20; label = "ooooooooooo oooooooo"; A [label="aaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa"]; {rank="same"; B [label="bbbbbbbbbb"]; C [label="cccccccccccc"]; 0; 01;} {rank="same"; edge [style=invis]; B1 [label="b1b1b1b1 b1\nb1b1b1b1b1b1b1b1b1"]; C1 [style=invis];} {rank="same"; edge [style=invis]; B2 [label="b2b2b2b2b2 b2b2b2\nb2b2b2b2b2"]; C2 [style=invis];} A->B ; 0->B [style=invis]; B->B1 [group=g1]; B1->B2 [group=g1]; A->C ; 01->C [group=g2 style=invis]; C->C1 [group=g2 style=invis]; C1->C2 [group=g2 style=invis]; style = "dashed"; } subgraph cluster2 { style=invis {rank=same; D [label="ddddddd dddd"]; D1 [label="d1d1d1"]; D2 [label="d2d2d2d2d2d"]; D3 [label="d3d3d3 d3d3d3d"]; 02;} 02 -> D [style=invis]; D -> D1; D1 -> D2; D2 -> D3; } // edges between clusters C -> D [ ltail=cluster1 constraint=false]; } </code></pre>

ответ

0

Использование

node[ width = x ]; 

где x - это число, соответствующее вашим ярлыкам.

Я использовал

node[ width = 3 ]; 

по линии 17 и

node[ width = 2 ]; 

на линии 45 кода, чтобы получить это:

enter image description here

+0

большое спасибо. Хотя я не понимаю, почему команда ограничения для края от первого субкластера ко второму, изменяет порядок выравнивания узлов внутри первого подкластера. Однако основная проблема заключается в том, что он работает с вашим решением! – Stephan