Sto generando il diagramma con graphviz e ho un problema - ci sono molti nodi che sono molto grandi - e un gran numero di piccoli nodi. Ho provato a generare png con neato e fdp ma entrambi generano una grafica molto grande, che è per lo più vuota (i nodi sono molto distanti). C'è un modo per impostare una "forza" della molla più grande per questi strumenti per forzare i nodi più vicini?Come impostare la forza "primavera" con graphviz per layout di grafici compatti
8
A
risposta
11
Quando si utilizza neato, è possibile armeggiare con overlap
e con l'attributo sep
.
overlap
può essere impostato per false
, compress
, scalexy
e more.
sep
può designare sia un margine additivo se utilizzato con un segno più precedente, altrimenti il margine è definito scalando dimensioni del nodo con 1 + il valore di sep
. Sembra che il valore predefinito sia
Non esitate a pubblicare un grafico di esempio. Non conoscendo il grafico particolare, ho fatto un esempio che contiene alcuni grandi e alcuni piccoli nodi:
layout=neato;
overlap=scalexy; //false, compress, ...
sep="+1"; // 0.1, +1
node[label="Large node", width=2, height=2];
l1; l2; l3;
node[label="\N", width=0.5, height=0.3];
1 -> l1;
2 -> l1;
3 -> l1;
4 -> l1;
5 -> l1;
5 -> l2;
6 -> l2;
7 -> l2;
8 -> l2;
8 -> l3;
9 -> l3;
10 -> l3;
Sapendo questo post è molto antica: se si utilizza SFDP/FDP, c'è un attributo chiamato [K] (http://www.graphviz.org/doc/info/attrs.html#d:K), che serve a questo scopo. – Yosh