Comment puis-je optimiser GraphViz largeur de sortie?
Je fais des graphiques qui ont un grand ratio largeur: ils sont 51706 x 503 pixels dans la taille.
Comment puis-je savoir GraphViz pour optimiser la largeur ?
Note 1: le graphique est en fait un arbre dont chaque nœud ayant beaucoup d'enfants.
Voici une l'échantillon.
Note 2: je pense que je utilisez le point 🙂
Note 3: Voici la Code Ruby
Mise en page - dot ou neato? Auriez-vous un exemple ?
dot je pense 🙂 Voici un exemple
Je pense à un exemple de code qui génère l'image (la dot de fichier). Mais à partir de l'image liée à
Je suis l'aide de GraphViz par Ruby. Je n'ai pas le correspondant de GraphViz code. Que " pourquoi je ne savais pas si j'étais vraiment à l'aide de dot. Maintenant, je suis assez sûr que je suis en utilisant le point.
Voici le code Ruby: gist.github.com/1062005
dot je pense 🙂 Voici un exemple
Je pense à un exemple de code qui génère l'image (la dot de fichier). Mais à partir de l'image liée à
ratio="compress"
avec un size
devrait donner un petit résultat. Aussi, avez-vous essayer une autre mise en page (neato)? Le résultat avec les neato peut être plus intéressant.Je suis l'aide de GraphViz par Ruby. Je n'ai pas le correspondant de GraphViz code. Que " pourquoi je ne savais pas si j'étais vraiment à l'aide de dot. Maintenant, je suis assez sûr que je suis en utilisant le point.
Voici le code Ruby: gist.github.com/1062005
OriginalL'auteur MickaelFM | 2011-06-19
Vous devez vous connecter pour publier un commentaire.
Dans le cas où le graphe est composé de plusieurs arbres qui ne sont pas connecté, vous pouvez les diviser (comme mentionné dans Graphviz: pause plat mais faiblement connecté graphique sur plusieurs lignes?)
En fonction de votre graphique, vous pouvez obtenir un petit graphique lors de l'utilisation de
(Vous aurez à spécifier
size
)Pour le détail des optimisations sur un graphique spécifique, vous pouvez ajouter
rank
attributs et de distribuer les nœuds manuellement sur les différents rangs.Edit:
Il y a un graphviz outil appelé unflatten qui semble exister exactement à cette fin :
N'a jamais eu le besoin de l'utiliser, mais je pense qu'il vaut la peine d'essayer.
La distance verticale entre deux rangs peut être ajustée par réglage de la
ranksep
attribut.unflatten est grande. Vraiment la peine d'essayer, aussi le seul outil qui permet de résoudre le problème.
Je suis d'accord, unflatten est grande. Voici quelques unflatten examples en autres answers
OriginalL'auteur marapet
Vous pouvez essayer de jouer avec les ratio paramètre.
OriginalL'auteur spektom
J'ai aussi eu le problème que neato gardé beaucoup d'espace entre les cases. Enfin, j'ai obtenu un résultat raisonnable en utilisant le graphique suivant des paramètres en plus:
C'est surtout utile en testant différentes valeurs pour overlap_scaling et ratio. C'est le moyen le plus rapide d'utiliser de plus petits exemples (<50 nœuds) et de l'utilisation gvedit.exe pour voir les effets.
Il m'a fallu un certain temps pour identifier ces paramètres, qui sont documentés à http://www.graphviz.org/doc/info/attrs.html
OriginalL'auteur CHN