Ridurre le dimensioni (come in area) del grafico generato da graphviz
-
26-09-2019 - |
Domanda
Qualcuno ha qualche consiglio generale per ridurre la dimensione di un grafico generato da graphviz (dimensione come nell'area, non come dimensione del file).
Ho un grafico abbastanza grande (700 nodi).Ho impostato una dimensione del carattere più piccola per ciascun nodo, ma sembra ridurre solo la dimensione del carattere e non la dimensione effettiva del nodo.Esistono anche attributi per ridurre la quantità complessiva di spazio vuoto nel grafico?Grazie!
Soluzione
Nella mia esperienza con graphviz per eseguire il rendering di grafici di quelle dimensioni (~ 700 nodi), un minimo aggiustamento per tentativi ed errori a questa combinazione di impostazioni degli attributi - alcuni strutturali, altri puramente estetici - per tutti e tre gli oggetti (grafico, nodi e bordi) dovrebbe fare quello che vuoi:
ridurre la separazione minima tra i nodi, tramite 'nodesep';per esempio., nodi[nodesep=0.75];Questo renderà il tuo grafico "troppo compatto". (nodosep E rangosep probabilmente influenzano il modo in cui il punto disegna un grafico più di qualsiasi altro parametro regolabile)
ridurre la distanza minima tra nodi di rango diverso, per esempio, nodi[ranksep=0.75];'ranksep' imposta la distanza minima tra nodi di ranghi diversi: ciò influenzerà in modo significativo il layout del grafico se il grafico è composto da molti ranghi
aumentare i pesi dei bordi, per esempio, bordo[peso=1.2];questo renderà i bordi più corti, rendendo a sua volta l'intero grafico più compatto
rimuovere i bordi dei nodi e il riempimento dei nodi, per esempio., nodi[colore=nessuno;forma=testo in chiaro], soprattutto per i nodi di forma ovale, una frazione sostanziale dello spazio totale del nodo è "inutilizzata" (cioè non utilizzata per visualizzare l'etichetta del nodo);l'impronta di ogni nodo è ora ridotta al solo testo
impostare esplicitamente la dimensione del carattere per i nodi (i bordi del nodo vengono ingranditi in modo da circondare il testo del nodo, il che significa che la dimensione del carattere e la quantità di testo per un dato nodo hanno un effetto significativo sulla sua dimensione);[fontsize=11] dovrebbe essere abbastanza grande da essere leggibile e allo stesso tempo ridurre l'aspetto "disordinato" (la dimensione predefinita è 14)
utilizzare colori diversi per nodi e bordi--questo renderà il tuo grafico più facile da leggere;ad esempio, imposta il fontcolor del nodo "testo" su blu e il fontcolor del bordo su "grigio" per aiutare l'occhio a distinguere i due insiemi di strutture grafiche.Ciò farà una differenza più grande di quanto potresti pensare.
impostare esplicitamente la dimensione totale del grafico, per esempio, grafico[dimensione="7,75,10,25"] (assicura che il tuo grafico si adatti a una pagina 8,5 x 11 e che occupi l'intero spazio)