Graphviz Alternative? [chiuso]
-
25-10-2019 - |
Domanda
sto cercando alternative alla GraphViz. Sto usando GraphViz per più di un decennio e va bene, ma i layout sono solo non produce grafici pubblicazione di qualità per me dato i miei dati di input. A volte i miei dati sono davvero grande e complesso, e, a volte non lo è, ma GraphViz mai veramente fa roba che è bello.
Quali altri strumenti di visualizzazione grafico sono persone che usano? Idealmente c'è uno che utilizza la sintassi GraphViz per file di input.
Qui per esempio è un file di input sto giocando con:
digraph mdc {
size="4,8";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0PAN0-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0047-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0048-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0050-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0051-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0052-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0009-FOO";
"KJ16:76:A2:60:6E" -> "JUNK-0413-FOO";
"KJ16:76:A2:60:6E" -> "JUNK-0414-FOO";
"KJE0:D0:13:14:94" -> "GEORGE42-FRED";
"KJE0:D0:13:14:94" -> "MY5-30-FRED";
"KJ50:04:EE:6C:F9" -> "PSPAN-036-FRED";
"KJ50:04:EE:6C:F9" -> "GEORGE02-FRED";
"KJ50:04:EE:6C:F9" -> "GEORGE04-FRED";
"KJ1B:B9:9B:D5:BB" -> "JUNK-0047-FOO";
"KJ1B:B9:9B:D5:BB" -> "JUNK-0048-FOO";
"KJ05:5F:EF:14:PAN" -> "thPAN-PAN-FRED";
"KJ05:5F:EF:14:PAN" -> "cn20-PAN-FRED";
"KJ15:F2-KIM-:E5YF" -> "thPAN-PAN-FRED";
"KJ15:F2-KIM-:E5YF" -> "cn20-PAN-FRED";
"KJ0E:90:D5:E6:5E" -> "JUNK-0051-FOO";
"KJ0E:90:D5:E6:5E" -> "JUNK-0009-FOO";
"KJ1E:90:DE:F1:07" -> "JUNK-0051-FOO";
"KJ1E:90:DE:F1:07" -> "JUNK-0009-FOO";
"KJ1E:90:D5:EE:5E" -> "JUNK-0051-FOO";
"KJ1E:90:D5:EE:5E" -> "JUNK-0047-FOO";
"KJ1E:90:D5:EE:5E" -> "JUNK-0009-FOO";
"KJ04:ED:66:C7:19" -> "JUNK-0562-FOO";
"KJ04:ED:66:C7:19" -> "JUNK-0561-FOO";
"KJ1B:B9:9C-PET-67" -> "JUNK-0047-FOO";
"KJ1B:B9:9C-PET-67" -> "JUNK-0049-FOO";
"PAN:KJ5E:7F:FF:FA" -> "JUNK-0PAN4-FOO";
"PAN:KJ5E:7F:FF:FA" -> "PSPAN-021-FRED";
"PAN:KJ5E:7F:FF:FA" -> "GEORGE38-FRED";
"PAN:KJ5E:7F:FF:FA" -> "JUNK-0095-FOO";
"PAN:KJ5E:7F:FF:FA" -> "JUNK-PAN18-FOO";
"KJ1B:B9:9B:D3:61" -> "JUNK-0PAN0-FOO";
"KJ1B:B9:9B:D3:61" -> "JUNK-0051-FOO";
"KJ1B:B9:9B:D3:61" -> "JUNK-0052-FOO";
"KJ1B:B9:9B:D3:61" -> "JUNK-0009-FOO";
"KJ26:18:BD:D9:E9" -> "JUNK-0562-FOO";
"KJ26:18:BD:D9:E9" -> "JUNK-0561-FOO";
"KJD0:B7:69:0A-VET" -> "cn4-06-FRED";
"KJD0:B7:69:0A-VET" -> "1039-FRED";
"KJ50:04:EE:6C:F9" [fontsize=96,shape=oval]
"KJ1E:90:DE:F1:07" [fontsize=96,shape=oval]
"KJ05:5F:EF:14:PAN" [fontsize=96,shape=oval]
"KJ26:18:BD:D9:E9" [fontsize=96,shape=oval]
"KJ1B:B9:9B:D5:BB" [fontsize=96,shape=oval]
"KJE0:D0:13:14:94" [fontsize=96,shape=oval]
"KJ0E:90:D5:E6:5E" [fontsize=96,shape=oval]
"KJ1E:A6:PAN:9E:3A" [fontsize=96,shape=oval]
"KJ1E:90:D5:EE:5E" [fontsize=96,shape=oval]
"PAN:KJ5E:7F:FF:FA" [fontsize=96,shape=oval]
"KJ1B:B9:9B:D3:61" [fontsize=96,shape=oval]
"KJ1B:B9:9C-PET-67" [fontsize=96,shape=oval]
"KJ15:F2-KIM-:E5YF" [fontsize=96,shape=oval]
"KJD0:B7:69:0A-VET" [fontsize=96,shape=oval]
"KJ04:ED:66:C7:19" [fontsize=96,shape=oval]
"KJ16:76:A2:60:6E" [fontsize=96,shape=oval]
"JUNK-0009-FOO" [fontsize=96,shape=box3d]
"GEORGE38-FRED" [fontsize=96,shape=box3d]
"JUNK-0413-FOO" [fontsize=96,shape=box3d]
"JUNK-0561-FOO" [fontsize=96,shape=box3d]
"JUNK-0050-FOO" [fontsize=96,shape=box3d]
"cn20-PAN-FRED" [fontsize=96,shape=box3d]
"JUNK-PAN18-FOO" [fontsize=96,shape=box3d]
"1039-FRED" [fontsize=96,shape=box3d]
"JUNK-0095-FOO" [fontsize=96,shape=box3d]
"PSPAN-021-FRED" [fontsize=96,shape=box3d]
"JUNK-0048-FOO" [fontsize=96,shape=box3d]
"JUNK-0052-FOO" [fontsize=96,shape=box3d]
"GEORGE42-FRED" [fontsize=96,shape=box3d]
"JUNK-0049-FOO" [fontsize=96,shape=box3d]
"GEORGE04-FRED" [fontsize=96,shape=box3d]
"cn4-06-FRED" [fontsize=96,shape=box3d]
"thPAN-PAN-FRED" [fontsize=96,shape=box3d]
"GEORGE02-FRED" [fontsize=96,shape=box3d]
"JUNK-0PAN0-FOO" [fontsize=96,shape=box3d]
"MY5-30-FRED" [fontsize=96,shape=box3d]
"JUNK-0047-FOO" [fontsize=96,shape=box3d]
"JUNK-0562-FOO" [fontsize=96,shape=box3d]
"JUNK-0PAN4-FOO" [fontsize=96,shape=box3d]
"JUNK-0051-FOO" [fontsize=96,shape=box3d]
"PSPAN-036-FRED" [fontsize=96,shape=box3d]
"JUNK-0414-FOO" [fontsize=96,shape=box3d]
}
(Tutti i fontsize=96
sono il mio vano tentativo di ottenere graphviz
per rendere il carattere più leggibile, ma a quanto pare non funziona.)
Soluzione
Cosa c'è che non va?
Io personalmente non sarebbe usare box3d, e la mia scelta di colori, probabilmente fa male agli occhi ...
(immagine full size: http://i.stack.imgur.com/MTe6n.png )
EDIT:
Ecco il codice modificato dot - ho riorganizzato un po ':
digraph {
size="11,11";
layout=neato;
overlap=false;
splines=true;
pack=true;
start="random";
sep=0.1;
edge [len=2];
node[shape=oval,style=filled,fillcolor="#DCA80A"];
"KJ50:04:EE:6C:F9"
"KJ1E:90:DE:F1:07"
"KJ05:5F:EF:14:PAN"
"KJ26:18:BD:D9:E9"
"KJ1B:B9:9B:D5:BB"
"KJE0:D0:13:14:94"
"KJ0E:90:D5:E6:5E"
"KJ1E:A6:PAN:9E:3A"
"KJ1E:90:D5:EE:5E"
"PAN:KJ5E:7F:FF:FA"
"KJ1B:B9:9B:D3:61"
"KJ1B:B9:9C-PET-67"
"KJ15:F2-KIM-:E5YF"
"KJD0:B7:69:0A-VET"
"KJ04:ED:66:C7:19"
"KJ16:76:A2:60:6E"
node[shape=box3d,style=filled,fillcolor="#B1C3D4"];
"JUNK-0009-FOO"
"GEORGE38-FRED"
"JUNK-0413-FOO"
"JUNK-0561-FOO"
"JUNK-0050-FOO"
"cn20-PAN-FRED"
"JUNK-PAN18-FOO"
"1039-FRED"
"JUNK-0095-FOO"
"PSPAN-021-FRED"
"JUNK-0048-FOO"
"JUNK-0052-FOO"
"GEORGE42-FRED"
"JUNK-0049-FOO"
"GEORGE04-FRED"
"cn4-06-FRED"
"thPAN-PAN-FRED"
"GEORGE02-FRED"
"JUNK-0PAN0-FOO"
"MY5-30-FRED"
"JUNK-0047-FOO"
"JUNK-0562-FOO"
"JUNK-0PAN4-FOO"
"JUNK-0051-FOO"
"PSPAN-036-FRED"
"JUNK-0414-FOO"
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0PAN0-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0047-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0048-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0050-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0051-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0052-FOO";
"KJ1E:A6:PAN:9E:3A" -> "JUNK-0009-FOO";
"KJ16:76:A2:60:6E" -> "JUNK-0413-FOO";
"KJ16:76:A2:60:6E" -> "JUNK-0414-FOO";
"KJE0:D0:13:14:94" -> "GEORGE42-FRED";
"KJE0:D0:13:14:94" -> "MY5-30-FRED";
"KJ50:04:EE:6C:F9" -> "PSPAN-036-FRED";
"KJ50:04:EE:6C:F9" -> "GEORGE02-FRED";
"KJ50:04:EE:6C:F9" -> "GEORGE04-FRED";
"KJ1B:B9:9B:D5:BB" -> "JUNK-0047-FOO";
"KJ1B:B9:9B:D5:BB" -> "JUNK-0048-FOO";
"KJ05:5F:EF:14:PAN" -> "thPAN-PAN-FRED";
"KJ05:5F:EF:14:PAN" -> "cn20-PAN-FRED";
"KJ15:F2-KIM-:E5YF" -> "thPAN-PAN-FRED";
"KJ15:F2-KIM-:E5YF" -> "cn20-PAN-FRED";
"KJ0E:90:D5:E6:5E" -> "JUNK-0051-FOO";
"KJ0E:90:D5:E6:5E" -> "JUNK-0009-FOO";
"KJ1E:90:DE:F1:07" -> "JUNK-0051-FOO";
"KJ1E:90:DE:F1:07" -> "JUNK-0009-FOO";
"KJ1E:90:D5:EE:5E" -> "JUNK-0051-FOO";
"KJ1E:90:D5:EE:5E" -> "JUNK-0047-FOO";
"KJ1E:90:D5:EE:5E" -> "JUNK-0009-FOO";
"KJ04:ED:66:C7:19" -> "JUNK-0562-FOO";
"KJ04:ED:66:C7:19" -> "JUNK-0561-FOO";
"KJ1B:B9:9C-PET-67" -> "JUNK-0047-FOO";
"KJ1B:B9:9C-PET-67" -> "JUNK-0049-FOO";
"PAN:KJ5E:7F:FF:FA" -> "JUNK-0PAN4-FOO";
"PAN:KJ5E:7F:FF:FA" -> "PSPAN-021-FRED";
"PAN:KJ5E:7F:FF:FA" -> "GEORGE38-FRED";
"PAN:KJ5E:7F:FF:FA" -> "JUNK-0095-FOO";
"PAN:KJ5E:7F:FF:FA" -> "JUNK-PAN18-FOO";
"KJ1B:B9:9B:D3:61" -> "JUNK-0PAN0-FOO";
"KJ1B:B9:9B:D3:61" -> "JUNK-0051-FOO";
"KJ1B:B9:9B:D3:61" -> "JUNK-0052-FOO";
"KJ1B:B9:9B:D3:61" -> "JUNK-0009-FOO";
"KJ26:18:BD:D9:E9" -> "JUNK-0562-FOO";
"KJ26:18:BD:D9:E9" -> "JUNK-0561-FOO";
"KJD0:B7:69:0A-VET" -> "cn4-06-FRED";
"KJD0:B7:69:0A-VET" -> "1039-FRED";
}
È possibile visualizzare e modificare qui: http://graph.gafol.net/dLQGPHJRc - questo sito utilizza piacevoli preset per i font e grandezza scrittura.
Si prega di notare che ho aggiunto start=random
, quindi il layout può essere diverso ogni volta che si crea il grafico.
Altri suggerimenti
Gephi è un incredibilmente buono, open source software di visualizzazione del grafico. Si usa il linguaggio come dot GraphViz.