Dot / GraphViz: diagram editor
Graphviz (diminutif de Graph Visualization Software) est un ensemble d'outils open source créés par les laboratoires de recherche d'AT&T qui manipulent des graphes définis à l'aide de scripts suivant le langage DOT.
Cet ensemble fournit aussi des bibliothèques permettant l'intégration de ces outils dans diverses applications logicielles.
Graphviz est un logiciel libre distribué suivant l'Eclipse Public License.
Official repo
Ubuntu install
doc
- http://edutechwiki.unige.ch/en/Graphviz (graphviz@tecfa)
exemple 1 (simple)
digraph { a -- b; b -- c; a -- c; d -- c; e -- c; e -- a; a -- z; }
source: https://renenyffenegger.ch/notes/tools/Graphviz/examples/index
exemple 2 (couleur)
digraph { bgcolor=azure; node [shape=box, color=lightblue2, style=filled]; edge [arrowsize=2, color=gold]; "zero" -> "dix" [color=purple]; "un" -> "dix"; "zero" -> "vingt"; "deux" -> "vingt"; "zero" [shape=circle, color=thistle1, fontcolor=purple]; }
exemple 3 avec intégration HTML, couleurs etc
digraph G { // Paramètres globaux du graph graph [bgcolor="#f5f5f5", fontname="Arial", fontsize=12]; node [shape=plaintext, fontname="Arial", fontsize=11, style=filled, fillcolor="#ffffff", color="#333333"]; edge [color="#666666", arrowsize=0.8, penwidth=1.5, fontname="Arial", fontsize=10]; // Nœud A avec HTML + style A [label=< <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4"> <TR><TD BGCOLOR="#e6f3ff"><B>Utilisateur</B></TD></TR> <TR><TD><FONT COLOR="#0055aa">John Doe</FONT></TD></TR> <TR><TD><FONT COLOR="#888888">Genève, Suisse</FONT></TD></TR> <TR><TD><FONT POINT-SIZE="9">📍 Localisation actuelle</FONT></TD></TR> </TABLE> >, fillcolor="#e6f3ff", color="#0055aa"]; // Nœud B avec HTML + style B [label=< <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4"> <TR><TD BGCOLOR="#ffe6e6"><B>Service</B></TD></TR> <TR><TD><FONT COLOR="#aa0000">Infomaniak Mail</FONT></TD></TR> <TR><TD><FONT COLOR="#888888">📧 E-mail sécurisé</FONT></TD></TR> <TR><TD><FONT POINT-SIZE="9">🔒 Hébergé en Suisse</FONT></TD></TR> </TABLE> >, fillcolor="#ffe6e6", color="#aa0000"]; // Nœud C avec HTML + style C [label=< <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4"> <TR><TD BGCOLOR="#e6ffe6"><B>Stockage</B></TD></TR> <TR><TD><FONT COLOR="#00aa00">kDrive</FONT></TD></TR> <TR><TD><FONT COLOR="#888888">📁 Cloud local & écologique</FONT></TD></TR> <TR><TD><FONT POINT-SIZE="9">♻️ Énergie renouvelable</FONT></TD></TR> </TABLE> >, fillcolor="#e6ffe6", color="#00aa00"]; // Connexions avec styles personnalisés A -> B [label="utilise", color="#0055aa", fontcolor="#0055aa", style="solid"]; B -> C [label="stocke", color="#aa0000", fontcolor="#aa0000", style="dashed"]; A -> C [label="accède à", color="#00aa00", fontcolor="#00aa00", style="dotted", arrowhead="vee"]; }
plugins IDE
Visual Studio Code (Codium)
tools
#! /usr/bin/bash # Script to create graphviz images from dot files echo "Create a graphviz images from dot files" echo "Choose format;\ \ bmp : Windows Bitmap Format\ gif : GIF\ tif/tiff : TIFF (Tag Image File Format)\ jpg/jpeg/jpe : JPEG\ png : Portable Network Graphics format\ svg/svgz : Scalable Vector Graphics\ dia : Dia format\ fig : FIG\ hpgl : HP-GL/2\ ico : Icon Image File Format\ ps : PostScript\ ps2 : PostScript for PDF\ pdf : Portable Document Format (PDF)" read format echo "which dot file?" ls *.dot read file dot -T$format $file -o $file.$format
Alternatives
Autres logiciels similaires
- https://www.yworks.com/products/yed (OLU - unige)



