|
|
doc 17/07/2020 macro processeur m4 11/10/2021 exemple 02/03/2025 pb convertion 12/03/2019 plan du site 19/10/2021 texte 29/06/2025 | ||
# dot est à la fois un langage et la plus utilisée # on peut choisir la forme des noeuds http://www.graphviz.org/doc/info/shapes.html | ||
# quand les noeuds contienne beaucoup de data, pour éviter de répéter ( en se trompant ) dot -Tx11 << FIN digraph { CNX [label="connexions\n · uid\n · rang\n · application\n · compte"] CPT [label="comptes\n · login\n · serveur"] APP [label="applications\n · libellé"] SRV [label="serveurs\n · host"] CPT -> SRV CNX -> { APP CPT } } FIN ![]() | ||
# installation sudo apt-get install graphviz # exemples hierarchique avec liens orientés pour constituer un fichier PNG: dot -Tpng <<< "digraph { a->b->c a->d }" | display - # liens non orientés affiché directement au terminal X echo "graph {$(for i in {0..8}; do for j in {0..8}; do test $i -gt $j && echo "$i -- $j"; done; done)}" | circo -Tx11 # on peut lister tout le monde pour verifier que personne n'est oublié dot -Tx11 <<< "graph { a b c d a--b--c }" # il faut souvent des cotes car de nombreux carctères bloquent : - / . ... dot -Tx11 <<< "digraph { \"ça\ncommence...\"->\"c'est fini.\" }" | ||
# problèmes de convertion il arrive que certains systèmes ne gèrent pas tous les formats de fichier il faut utiliser la fonction "convert" d'"ImageMagick" pour forcer la sortie dot -Teps | convert - png:- > fichier.png | ||
#! /bin/bash #affiche un plan du site # avec les icones # rendu image ou cliquable boucle() { echo "\"$(basename $1)\" -> {" for i in * do if test -f "$i/$i.png" then echo "\"$i\"" echo "\"$i\"[shape="folder" image=\"$1/$i/$i.png\", label=\"\" href=\"http://www.memoperso.fr/$1/$i\"];" cd $i boucle $1/$i cd .. fi done echo "}" } (echo "digraph { label=\"plan du site\" labelloc=t fontsize=150 \".\"[fontsize=150 label=\"memoperso.fr\"]"; boucle .; echo "}") | fdp -Tx11 | ||
# idem en mode texte ascii graph-easy $ sudo apt install libgraph-easy-perl $ echo "[ A ] -- car --> [ B ],[ C ] -- car --> [ D ],[ E ]" | graph-easy +-----------------------+ | | | +------+ car +---+ car +---+ | | A | -----> | B | -----> | D | | +------+ +---+ +---+ | | ^ | | car | | v | | car +------+ car | | | C | ----------------------+ | +------+ | | | | car | v | +------+ +---> | E | +------+ |