Graphviz: Comment passer de .dot à un graphique?

431

Je n'arrive pas à comprendre cela. J'ai un fichier .dot, qui est valide selon la syntaxe. Comment utiliser graphviz pour le convertir en image?

(notez que je suis sous Windows, pas sous linux)

Nick Heiner
la source
17
Pour Windows: dl le msi et installez; Trouvez gvedit.exedans votre liste de programmes; Ouvrir le .dotfichier en question; Cliquez sur la personne en cours d'exécution dans la barre d'outils; Allez à graph -> settings; changez Output file typede type de fichier à votre convenance et appuyez sur ok .. Cela ne dit rien, vous trouvez simplement le fichier dans le même répertoire que votre fichier .dot.
ashley

Réponses:

456

type: dot -Tps filename.dot -o outfile.ps

Si vous souhaitez utiliser le rendu de points. Il existe des alternatives comme neato et twopi. Si graphiz n'est pas sur votre chemin, déterminez où il est installé et exécutez-le à partir de là.

Vous pouvez modifier le format de sortie en variant la valeur après -Tet en choisissant une extension de nom de fichier appropriée après -o.

Si vous utilisez Windows, consultez l'outil installé appelé GVEdit, cela rend le processus un peu plus facile.

Allez voir le site graphviz dans la section intitulée "Guides de l'utilisateur" pour plus de détails sur l'utilisation des outils:

http://www.graphviz.org/documentation/

(Voir page 27 pour le formatage de sortie pour la commande dot, par exemple)

http://www.graphviz.org/pdf/dotguide.pdf

Paul McMillan
la source
1
d'une manière ou d'une autre, l'aperçu GVEdit montre toujours que l'image est vierge. Lorsque j'essaie de sauvegarder l'image, rien ne se passe.
Nick Heiner
7
Est-il possible de faire en sorte que GVEdit se souvienne de la taille et de l'emplacement des fenêtres de disposition? Cela me rend fou que lorsque j'appuie sur F5, cela réduit toujours la taille de la fenêtre de mise en page par défaut!
Matthew Lock
@PaulMcMillan, pourriez-vous m'aider avec le problème m ici:, http://stackoverflow.com/questions/26477403/graphviz-dot-to-ps-issuema sortie est limitée à une page de correctif et certaines parties sont hors de la page
Amir
AFAIK, il n'est pas possible de faire en sorte que GVEdit se souvienne des fenêtres. Je suis d'accord que l'UX laisse à désirer.
Paul McMillan
J'ai créé un fichier terraform.dot à partir d'une commande de graphique terraform. Je suis sous Windows. j'ai fait -o outfile.jpg et quand je double-clique sur le jpg, il verrouille l'explorateur. J'ai également essayé le gif et j'ai eu le même problème.
JDPeckham
203
dot -Tps input.dot > output.eps
dot -Tpng input.dot > output.png

La sortie PostScript semble toujours là. Je ne sais pas si le point a une sortie PNG par défaut. Cela peut dépendre de la façon dont vous l'avez construit.

user172818
la source
40
au lieu d'utiliser>, je suggère d'utiliser le paramètre «-o»
Rytek
9
Selon la prise en charge de votre système, vous pouvez exporter vers toutes sortes de formats de fichiers. J'ai trouvé dot -Tsvg input.dot > output.svgassez utile.
Thane Brimhall
4
Un peu plus facile, laissez dot choisir le nom de fichier en fonction du nom de fichier d'entrée et du type de fichier: dot -Tpng -O file.dot (produira file.png)
Andrew Mackenzie
97

dot file.dot -Tpng -o image.png

Cela fonctionne sur Windows et Linux. Graphviz doit être installé.

jbp
la source
2
Ajouter Graphviz à Path
Anupama G
6
Sur OSX, vous devrez d'abord installer Graphviz en utilisant Homebrew:brew install graphviz
Dennis
1
Je peux générer une image png avec un point, mais l'arrière-plan est de couleur blanche. J'ai besoin d'un fond transparent. Y a-t-il un moyen de l'obtenir?
Sujai Sivasamy
1. Installez Graphviz à partir de graphviz.gitlab.io/_pages/Download/Download_windows.html 2. Ajoutez «C: \ Program Files (x86) \ Graphviz2.38 \ bin» à votre variable système PATH 3. Ouvrez cmd et accédez à dir où vous avez enregistré le fichier .dot 4. Utilisez la commande 'dot yourFile.dot -Tpng -o image.png'
Subhashi
36

Il y a aussi les téléspectateurs en ligne:
http://www.webgraphviz.com/
http://sandbox.kidstrythisathome.com/erdos/
http://viz-js.com/

ArtemGr
la source
23
J'ai totalement créé Erdos et je l'ai oublié il y a longtemps. Je ne savais pas combien de personnes y étaient liées!
1
ajouter un bouton de don;)
Ivan Ferrer Villa
J'essaie de générer un graphique pour la grammaire C à partir d'ici quut.com/c/ANSI-C-grammar-y.html . Mais ce n'est pas réussi. Cette grammaire est-elle trop grosse pour être manipulée?
Thuy Nguyen
32

Obtenez le graphviz-2.24.msi Graphviz.org . Obtenez ensuite zgrviewer .

Zgrviewer nécessite Java (probablement 1.5+). Vous devrez peut-être définir les chemins d'accès aux fichiers binaires Graphviz dans les préférences de Zgrviewer.

Fichier -> Ouvrir -> Ouvrir avec un point -> Pipeline SVG (standard) ... Choisissez votre fichier .dot.

Vous pouvez zoomer, exporter, toutes sortes de choses amusantes.

Seth
la source
7
Beaucoup de fonctionnalités, mais une conception d'interface absolument folle!
Casebash
11

Cela devrait combiner beaucoup de réponses.

# Convert dot to png via graphviz
dot -Tpng filename.dot -o filename.png

# Convert dot to svg via graphviz
dot -Tsvg filename.dot -o filename.svg

# Convert dot to eps via graphviz
dot -Tps filename.dot -o filename.eps

Gardez à l'esprit que sur OSX (MAC), vous devez installer homebrew pour installer graphviz pour pouvoir utiliser les commandes point ci-dessus.

brew install graphviz

Il est également possible d'installer Graphviz (et d'utiliser les commandes ci-dessus) via la fonctionnalité de gestionnaire de paquets de conda si Anaconda est installé.

conda install python-graphviz
Michael James Kali Galarnyk
la source
8

Vous pouvez également sortir votre fichier au format xdot, puis le rendre dans un navigateur en utilisant canviz, une bibliothèque JavaScript.

Canviz sur code.google.com :

Pour voir un exemple, il y a un lien "Démo Canviz" sur la page ci-dessus en date du 2 novembre 2014.

innohead
la source
4

aucune conversion n'est requise.

Nous pouvons simplement utiliser la commande xdot sous Linux qui est une visionneuse interactive pour les fichiers de points Graphviz.

ex: fichier xdot.dot

pour plus d'informations: https://github.com/rakhimov/cppdep/wiki/How-to-view-or-work-with-Graphviz-Dot-files

Luftatako
la source
Merci beaucoup, je me sentais stupide de ne pas mettre la main sur la version visionneuse de dot! :)
Xenos
2

Pour les utilisateurs de fenêtres, veuillez exécuter la commande complète pour convertir le fichier * .dot en png:

C:\Program Files (x86)\Graphviz2.38\bin\dot.exe" -Tpng sampleTest.dot > sampletest.png.....

J'ai trouvé un bogue dans Solgraph qui utilise une ancienne version de Solidity-Parser qui ne semble pas assez intelligente pour capturer de nouvelles améliorations faites pour le langage de programmation Solidity lui-même, par exemple émettre un mot-clé pour l'événement

Abhishek Jain
la source
2

Vous pouvez utiliser un très bon outil en ligne pour cela. Voici le lien dreampuf.github.io Remplacez simplement le code à l'intérieur de l'éditeur par votre code.

Sanaullah Ahmad
la source
1

Vous pouvez utiliser le code VS et installer l'extension Graphviz ou,

  1. Installez Graphviz à partir de https://graphviz.gitlab.io/_pages/Download/Download_windows.html
  2. Ajoutez C:\Program Files (x86)\Graphviz2.38\bin(ou votre_ chemin_installation / bin) à votre variable système PATH
  3. Ouvrez cmd et accédez au répertoire où vous avez enregistré le fichier .dot
  4. Utilisez la commande dot music-recommender.dot -Tpng -o image.png

entrez la description de l'image ici

Subhashi
la source