Affichage d'une arborescence dans tkinter

LDM900 Messages postés 70 Date d'inscription dimanche 5 avril 2020 Statut Membre Dernière intervention 7 mars 2024 - 7 mars 2024 à 16:33
yg_be Messages postés 22790 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 mai 2024 - 8 mars 2024 à 09:18

Bonjour, je me retrouve bloqué sur un projet. En effet celui ci me demande de créer un affichage d'un arbre à l'aide d'une liste de liste sous formes d'arbre ( voici un exemple : " 

[<__main__.perf_prix object at 0x0000024D99E5BA88>,
 [<__main__.perf_prix object at 0x0000024D99E5B788>,],
 [<__main__.perf_prix object at 0x0000024D99E5BE88>,
  [<__main__.perf_prix object at 0x0000024D99E61488>,
   [<__main__.perf_prix object at 0x0000024D99E5BB48>,,
    [<__main__.perf_prix object at 0x0000024D99E5B588>, [], []]],
   [<__main__.perf_prix object at 0x0000024D99E61588>,
    [<__main__.perf_prix object at 0x0000024D99E5BF48>,
     [<__main__.perf_prix object at 0x0000024D99E5BE48>, [], []],],]],]]

) et j'aimerais avoir un affichage du genre 

avec chaque élément dans les cercles.

Cordialement

4 réponses

yg_be Messages postés 22790 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 mai 2024 1 467
7 mars 2024 à 19:34

bonjour, qu'as-tu essayé?

tu connais bien tkinter?

0
LDM900 Messages postés 70 Date d'inscription dimanche 5 avril 2020 Statut Membre Dernière intervention 7 mars 2024 1
Modifié le 7 mars 2024 à 20:34

Bonsoir,

justement je ne sais pas trop vers quoi aller qui me permettrais d'avoir ce design... (j'avoue que c'est une tache pour un projet de groupe que j'avais confié à un ami) Mon ami c'est tourné vers le module treeview de tkinter sauf que ça avait l'air de le mené vers une impasse ( ou du moins la manière dont il procédait car il se retrouvait bloquer avec des colonnes à remplir... et de ce que j'ai vu à l'aide de quelque recherches on ne serait pas arrivé sur le modèle souhaité (sauf erreur de ma part ou recherches pas assez approfondie)). En reprenant la chose j'ai pensé rester sur tkinter mais faire en sorte qu'il affiche une image et non qu'il créer lui même l'arborescence (car avec 2 ou 3 recherches ça me aprraissait plus simple) pour ce faire, je me suis penché sur le module graphviz et j'arrive à peux prêt à avoir ce que je veux sauf qu'il est nécessaire d'installer le module au pc aussi ce qui risque d'être compliqué pour valider notre projet...

Et pour répondre à ta 2ème question non je ne connais que très peux tkinter ( que les fonctions de bases et les boutons )

En espérant recevoir ton aide

Cordialement

0

Bonsoir,

Le souci n'est pas que c'est compliqué d'afficher quelques rectangles, cercles, lignes, textes avec tkinter, il est plus de devoir calculer les coordonnées en fonction de la dimension d'affichage souhaité, la profondeur de l'arbre, ton arbre doit avoir 6 nœuds, donc 32 éléments si je me goure pas au plus profond de l'arbre, à partir de tout ça, essayer de calculer les coordonnées de tout ce joyeux bordel, belle prise de tête en perspective ^^

Essaie de rechercher sur internet des trucs comme matplotlib sklearn tree plot_tree, on tombe sur des trucs intéressants comme par ex.

https://mljar.com/blog/visualize-decision-tree/

Et bien sûr la doc :

https://scikit-learn.org/stable/auto_examples/tree/plot_unveil_tree_structure.html#sphx-glr-auto-examples-tree-plot-unveil-tree-structure-py

En tout cas, une chose est sure, c'est qu'il faut revoir la structure de ton arbre.

bon courage, il va t'en falloir ^^

0
LDM900 Messages postés 70 Date d'inscription dimanche 5 avril 2020 Statut Membre Dernière intervention 7 mars 2024 1
7 mars 2024 à 22:11

Ça marche merci bien après le problème c'est que la j'ai fait un truc extrêmement raccourci de mon arbre car il contient 98 élément et ça faisait beaucoup à mettre et aurait fait fuir les gens qui aurait potentiellement pu vouloir aider. Merci pour tes pistes je regarderais demain en détail.

Bonne soirée à toi

0
yg_be Messages postés 22790 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 mai 2024 1 467
8 mars 2024 à 09:18

Il y a aussi plotly ou graphviz.

Une recherche "python display tree" donne énormément de pistes.

0