Soyez écolo faites des arbres !
By Pierre-Yves on Tuesday, February 3 2009, 15:30 - Général - Permalink
Plotting trees in python
Créer des arbres avec python
English version
I recently started a small webapps that can generate small genealogy tree on the fly.
I faced a couple of problem using the Pydot library which are reported (#481540 (problem of accent) and #481786 (problem with unicode) ).
My latest issue is to find a way to graph the node over two lines.
Using @@ @@ in the node code divides my node in two rather than just splitting the content over two lines.
Any hints to do that ? Any other libraries I could look at to plot my graphs ?
Thanks :-)
PS: A special thanks to ivazquez, abadger1999 and all the guys hanging in #fedora-python who helped me so much with that project !
French version
Depuis quelques temps je travail sur une appli web qui permet de générer (entre autre) des arbres généalogiques de manière dynamique.
Je me suis alors penché sur la bibliothèque python Pydot où j'ai rencontré quelques problèmes rapporté sur notre bugzilla (#481540 (problème avec des accents) et #481786 (problème avec la gestion de l'unicode)).
Un des dernièrs problème que j'ai, c'est de mettre le contenu d'un noeud sur deux lignes.
Si j'utilise @@ @@ il me crée 2 noeuds au lieu de me mettre un noeud avec le contenu réparti sur deux lignes.
Une idée de comment résoudre ça ?? Une autre bibliothèque que je pourrais utiliser et qui ferai cela ?
Merci :-)
PS: Un grand merci à ivazquez, abadger1999 et tous les autres de #fedora-python qui m'ont beaucoup aidé sur ce projet !
Comments
Et pourquoi ne pas les réaliser en manipulant des expressions simplement la syntaxe de graphviz est simple, non ?
Il me semble que GRAMPS notamment utilise graphviz et python.
Sinon il y a des ressources sur le site officiel :
http://www.graphviz.org/Resources.p...
@+
J'avoue que j'aime bien pydot c'est assez simple (quand on a compris comment ça marche) et ça fais bien le lien avec graphviz.
Pour info à défaut de mettre pour splitter sur deux lignes où pydot plante il suffit de passer par qui lui passe sans problèmes :)
Sinon j'ai aussi réussit à manipuler le graphique pour le faire tourner, pour inverser les flèches ou même l'ordre des nodes...
Je ferai un post là dessus dès que j'ai un peu de temps :)