Visualisé un arbre phylogénétique

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Ulix
Messages : 315
Inscription : ven. 04/juin/2004 14:27
Localisation : Frontignan

Visualisé un arbre phylogénétique

Message par Ulix »

Bonjour a tous,

Je recherche du code (si possible en PB) pour visualisé un arbre phylogénétique.

C'est comme un TreeGadget, mais a l'horizontal.

Si quelqu'un a déjà développé une tel représentation graphique, je lui serais reconnaissant s'il pouvait me donné un exemple de code.

Merci d'avance. :lol:
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

Image
Avatar de l’utilisateur
Ulix
Messages : 315
Inscription : ven. 04/juin/2004 14:27
Localisation : Frontignan

Message par Ulix »

Voici un exemple d'arbre phylogénétique :



http://pbil.univ-lyon1.fr/ird/instree2.gif

ou alors
http://www.snv.jussieu.fr/vie/dossiers ... eVIH1.gif

Je cherche du code qui me permet d'obtenir une representation graphique a l'horizontal.
Les données d'entrées sont représenyté ou la forme :
((((EAS,ECA),(EZH,EBU)),(CSI,DBI)),HSA), chaque parranthése représente un niveau de l'arbre.
Tous code me permettant de représenté un arbre a l'horizontal sera la bien venu, cela me donnera (peut-être) des idées :?:
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

oui mùais avant la représentation graphique il faut s'attaquer à la représentation logique de l'arbre en mémoire.

donc ce que tu voudrais c'est quelque chose du genre :

*arbre = Arbre("((((EAS,ECA),(EZH,EBU)),(CSI,DBI)),HSA)")

ArbreDessiner(*arbre)

?
Image
Avatar de l’utilisateur
Ulix
Messages : 315
Inscription : ven. 04/juin/2004 14:27
Localisation : Frontignan

Message par Ulix »

Je dois avoué que je n'est pas trop pensé à la représentation logique de l'arbre en mémoire !

J'ai une procedure qui me revoit les chemins pour chaque terminaison dans une liste structurée

NomTaxon$ = EAS
Chemin$ = L000,L001,L002,L003,L004,

NomTaxon$ = ECA
Chemin$ = L000,L001,L002,L003,L005,

NomTaxon$ = EZH
Chemin$ = L000,L001,L002,L006,L007,

etc

Mais je ne sais pas trop comment m'y prendre pour concevoir le graphique.

Si tu a une petite idée, n'hésite pas a me la proposé... :wink:

Merci Flype d'avance.
Frenchy Pilou
Messages : 2194
Inscription : jeu. 27/janv./2005 19:07

Message par Frenchy Pilou »

C'est laquelle?
parcequ'il y a l'air d'y en avoir plusieurs formes :)
http://images.google.fr/images?q=arbre+ ... art=0&sa=N
Est beau ce qui plaît sans concept :)
Speedy Galerie
Avatar de l’utilisateur
Ulix
Messages : 315
Inscription : ven. 04/juin/2004 14:27
Localisation : Frontignan

Message par Ulix »

Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

et combien au maximum de branches peut-il y avoir dans le dernier niveau ?

parce que l'algorithme doit commencer par là, pour la mise à l'échelle du dessin.

je vais m'y essayé en commencant par le parser qui va interpréter une chaine.

par contre ce que je trouve bizarre dans cette representation c'est que les noeuds n'ont pas de nom...
Dernière modification par Flype le dim. 11/juin/2006 9:41, modifié 1 fois.
Image
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

bon déjà, j'essaye de représenter sur la forme d'une formule l'arbre suivant :

Code : Tout sélectionner

ARBRE = ( ( ( ( ( ( ( A, C ), G ), ( F, H ) ), B ), E ), D ), O )
Image

en principe, en math, on ferait comme çà.
je vais faire une fonction récursive pour lire la formule.
Image
Avatar de l’utilisateur
Ulix
Messages : 315
Inscription : ven. 04/juin/2004 14:27
Localisation : Frontignan

Message par Ulix »

et combien au maximum de branches peut-il y avoir dans le dernier niveau ?
Dans mon cas : ((((EAS,ECA),(EZH,EBU)),(CSI,DBI)),HSA)
il y a 7 branches dans le dernier niveau, avec 4 niveau.

Dans le modele que j'ai donné en exemple (((((((A,C),G), (F,H)),B),E),D),O)
il y a 9 branches dans le dernier niveau avec 7 niveau.

Mais dans l'absolu, pour d'autre arbre le nombre de branche terminale peut être bien plus important ainsi que le nombre de niveau.
Remy Vincent
Messages : 12
Inscription : sam. 15/oct./2005 18:33
Contact :

Message par Remy Vincent »

Ulix a écrit : Dans mon cas : ((((EAS,ECA),(EZH,EBU)),(CSI,DBI)),HSA)
il y a 7 branches dans le dernier niveau, avec 4 niveau.

Dans le modele que j'ai donné en exemple (((((((A,C),G), (F,H)),B),E),D),O)
il y a 9 branches dans le dernier niveau avec 7 niveau.

Mais dans l'absolu, pour d'autre arbre le nombre de branche terminale peut être bien plus important ainsi que le nombre de niveau.
C'est pas des copies d'écran "hard" (si on peut dire) de ce type que vous cherchez ?


Image


Image


Par contre pour traduire en PUREBASIC, c'est pas facile, EN PLUS le programme fait 800 lignes de .... et une fois traduit il risque de ne plus rentrer dans les 900 LIGNES MAXIMUM de ma version d'évaluation de PUREBASIC... Et alors il faudrait que j'achète enfin le produit, qui a augmenté, parait-il... ... etc.,..., etc...

Bref, je discute, je pinaille, mais petit à petit, je tente quand même une traduction...
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

çà l'air intéressant et plus 'formel' que ce à quoi j'avais réfléchis.

dans quel langage est programmé ce dont tu parles ?
parce qu'on pourrait aider à traduire si besoin...
Image
Avatar de l’utilisateur
Ulix
Messages : 315
Inscription : ven. 04/juin/2004 14:27
Localisation : Frontignan

Message par Ulix »

@Remy Vincent : C'est tous a fait cela, par contre pourrais tu me donné un lien pour téléchargé les sources les (800 lignes peu un porte le langage) ?

@Flype : Je pense que cela pourrai être intéressant et pourquoi utile a d'autre !
Avatar de l’utilisateur
Ulix
Messages : 315
Inscription : ven. 04/juin/2004 14:27
Localisation : Frontignan

Message par Ulix »

@Remy Vincent : C'est tous a fait cela, par contre pourrais tu me donné un lien pour téléchargé les sources les (800 lignes peu un porte le langage) ?

@Flype : Je pense que cela pourrai être intéressant et pourquoi utile a d'autre !
Frenchy Pilou
Messages : 2194
Inscription : jeu. 27/janv./2005 19:07

Message par Frenchy Pilou »

merci qui :) et c'est gratos!
http://evolgen.biol.metro-u.ac.jp/TE/TE_man.html
(il vaut mieux l'intégrer à Mega3 gratos aussi :roll:
http://www.megasoftware.net/mega.html
C'est un rien bestial et puissant!

Image

Image

Image

Evidemment cela enlève le plaisir de programmer son propre soft :roll:

trouvé ici : Alors là je dois dire que je n'avais jamais vu une telle
concentration :lol:
Du phylogénétique en veux-tu en voilà :D
(y sont pas tous gratos) :!:
http://evolution.genetics.washington.ed ... tware.html
Est beau ce qui plaît sans concept :)
Speedy Galerie
Répondre