Dessiner un dendrogramme

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

Dessiner un dendrogramme

Messagepar Aleph » Samedi 11 Août 2012, 21:16

Bonjour!

Je cherche un moyen (simple) de dessiner un dendrogramme sous Latex sans passer par un logiciel.
Il s'agit moralement de dessiner un arbre mais sous cette forme particulière.
Est-ce que vous sauriez comment faire ce genre de graphique?

Merci beaucoup!
Aleph
Hecto-utilisateur
 
Messages: 86
Inscription: Mardi 05 Janvier 2010, 16:38
Statut actuel: Post-bac | Doctorat

Publicité

Re: Dessiner un dendrogramme

Messagepar Clembou » Dimanche 12 Août 2012, 09:31

Avec TikZ, ça peut le faire assez rapidement... Il faut juste bien calculer les coordonnées des intersections des branches.
Clément Boulonne - Professeur freelance de mathématiques

Spécialiste LaTeX et informatique

Site web (Enseignement / CAPES / Licence / Libramaths) : http://cboumaths.wordpress.com
Clembou
Hecto-utilisateur
 
Messages: 97
Inscription: Lundi 08 Janvier 2007, 18:34
Localisation: Seclin, Nord
Statut actuel: Actif et salarié | Enseignant

Re: Dessiner un dendrogramme

Messagepar François D. » Dimanche 12 Août 2012, 10:29

Je serais étonné qu'avec PSTricks / pst-tree il soit impossible de réaliser ça ... simplement, il faut trouver les bonnes options de composition.
François D.
Téra-utilisateur
 
Messages: 1370
Inscription: Dimanche 30 Juillet 2006, 09:04
Localisation: Alsace
Statut actuel: Actif et salarié | Enseignant

Re: Dessiner un dendrogramme

Messagepar Clembou » Dimanche 12 Août 2012, 10:38

Méthode bourrine GeoGebra avec export Tikz :

EDIT :
Code: Tout sélectionner
\documentclass[10pt,landscape]{article}
\usepackage[margin=2cm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{pgf,tikz}
\usetikzlibrary{arrows}
\pagestyle{empty}
\begin{document}
\definecolor{cqcqcq}{rgb}{0.75,0.75,0.75}
\begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=0.5cm,y=0.5cm]
\clip(-10.22,-12.54) rectangle (31.18,5.35);
\draw (-10,5) node[anchor=west] {Consommation};
\draw (-10,4) node[anchor=west] {Emploi};
\draw (-10,3) node[anchor=west] {Endettement};
\draw (-10,2) node[anchor=west] {Aide sociale};
\draw (-10,1) node[anchor=west] {Prestations d'invalidité};
\draw (-10,0) node[anchor=west] {Immigration};
\draw (-10,-1) node[anchor=west] {Poursuites judiciaires};
\draw (-10,-2) node[anchor=west] {\small Autres problèmes familiaux};
\draw (-10,-3) node[anchor=west] {Hospitalisation ou congé};
\draw (-10,-4) node[anchor=west] {Logement};
\draw (-10,-5) node[anchor=west] {Traitement par la police};
\draw (-10,-6) node[anchor=west] {Discrimination};
\draw (-10,-7) node[anchor=west] {Blessures corporelles};
\draw (-10,-8) node[anchor=west] {Problèmes familiaux};
\draw (-10,-9) node[anchor=west] {Testament et inaptitude};
\draw [->] (-2,-10) -- (31,-10);
\draw (-2,-10) node[anchor=north] {$0,0$};
\draw (2,-10) node[anchor=north] {$0,2$};
\draw (6,-10) node[anchor=north] {$0,4$};
\draw (10,-10) node[anchor=north] {$0,6$};
\draw (14,-10) node[anchor=north] {$0,8$};
\draw (18,-10) node[anchor=north] {$1,0$};
\draw (22,-10) node[anchor=north] {$1,2$};
\draw (26,-10) node[anchor=north] {$1,4$};
\draw (30,-10) node[anchor=north] {$1,6$};
\draw (9,-11) node[anchor=north west] {Distance maximale entre les gappes};
\draw (-2,-9)-- (18,-9);
\draw (-2,-8)-- (16,-8);
\draw (-2,-7)-- (14,-7);
\draw (-2,-7)-- (14,-7);
\draw (-2,-6)-- (12,-6);
\draw (-2,-5)-- (11.5,-5);
\draw (-2,-4)-- (11,-4);
\draw (-2,-3)-- (10,-3);
\draw (-2,-2)-- (10,-2);
\draw (-2,-3)-- (10.5,-3);
\draw (-2,-1)-- (9.8,-1);
\draw (-2,-1)-- (8,-1);
\draw (-2,-1)-- (7,-1);
\draw (-2,0)-- (7,0);
\draw (-2,0)-- (8,0);
\draw (-2,1)-- (8,1);
\draw (-2,2)-- (9,2);
\draw (-2,3)-- (25,3);
\draw (-2,4)-- (24,4);
\draw (-2,5)-- (24,5);
\draw (24,5)-- (24,4);
\draw (24,4.5)-- (25,4.5);
\draw (25,3)-- (25,4.5);
\draw (8,0)-- (8,1);
\draw (8,0.5)-- (9,0.5);
\draw (9,2)-- (9,0.5);
\draw (9,1.5)-- (9.8,1.5);
\draw (9.8,-1)-- (9.8,1.5);
\draw (9.8,0)-- (10,0);
\draw (10,-2)-- (10,0);
\draw (10,-0.5)-- (10.5,-0.5);
\draw (10.5,-3)-- (10.5,-0.5);
\draw (10.5,-2)-- (11,-2);
\draw (11,-4)-- (11,-2);
\draw (11,-3)-- (11.5,-3);
\draw (11.5,-5)-- (11.5,-3);
\draw (11.5,-4)-- (12,-4);
\draw (12,-6)-- (12,-4);
\draw (12,-5)-- (14,-5);
\draw (14,-7)-- (14,-5);
\draw (14,-6)-- (16,-6);
\draw (16,-8)-- (16,-6);
\draw (16,-7)-- (18,-7);
\draw (18,-7)-- (18,-9);
\draw (18,-8)-- (28.5,-8);
\draw (28.5,4)-- (28.5,-8);
\draw (28.5,4)-- (25,4);
\begin{scriptsize}
\draw [color=black] (-2,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\draw [color=black] (2,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\draw [color=black] (6,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\draw [color=black] (10,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\draw [color=black] (14,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\draw [color=black] (18,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\draw [color=black] (22,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\draw [color=black] (26,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\draw [color=black] (30,-10)-- ++(-1.5pt,0 pt) -- ++(3.0pt,0 pt) ++(-1.5pt,-1.5pt) -- ++(0 pt,3.0pt);
\end{scriptsize}
\end{tikzpicture}
\end{document}


Sinon, on peut aussi s'inspirer de ces codes : http://www.texample.net/tikz/examples/tag/diagrams/
Dernière édition par Clembou le Dimanche 12 Août 2012, 13:22, édité 1 fois.
Clément Boulonne - Professeur freelance de mathématiques

Spécialiste LaTeX et informatique

Site web (Enseignement / CAPES / Licence / Libramaths) : http://cboumaths.wordpress.com
Clembou
Hecto-utilisateur
 
Messages: 97
Inscription: Lundi 08 Janvier 2007, 18:34
Localisation: Seclin, Nord
Statut actuel: Actif et salarié | Enseignant

Re: Dessiner un dendrogramme

Messagepar Aleph » Dimanche 12 Août 2012, 12:48

Merci beaucoup pour vos réponses et le temps consacré!
Je vais retenir la solution en Tikz, cela me donnera une occasion d'apprendre à l'utiliser.
PSTricks, c'est sympa, tant qu'on ne cherche pas à produire du ps et du pdf; j'ai arrêté de l'utiliser depuis plusieurs années à cause de cela mais sinon je confirme qu'il est vraiment sympa et puissant.
Encore merci!
Aleph
Hecto-utilisateur
 
Messages: 86
Inscription: Mardi 05 Janvier 2010, 16:38
Statut actuel: Post-bac | Doctorat

Re: Dessiner un dendrogramme

Messagepar Aleph » Dimanche 12 Août 2012, 19:30

Je reviens vers vous car j'ai encore une question.
En utilisant Tikz, j'arrive à dessiner mon dendrogramme; c'est effectivement très simple mais c'est long!
J'envisage donc de programmer un algorithme me générant automatiquement le code Tikz souhaité.
L'algorithme me semble assez simple également et je pourrais le coder dans mon langage préféré mais je trouve cela dommage.
Est-ce que vous sauriez s'il est possible d'implémenter des algorithmes en Latex?
Cela serait plus sympa et je pourrais le poster ici pour que d'autres puissent l'utiliser si besoin.

Merci beaucoup!
Aleph
Hecto-utilisateur
 
Messages: 86
Inscription: Mardi 05 Janvier 2010, 16:38
Statut actuel: Post-bac | Doctorat

Re: Dessiner un dendrogramme

Messagepar pg » Mercredi 15 Août 2012, 10:39

Il vaut probablement mieux utiliser un langage qu'on maîtrise déjà : on peut programmer avec TeX/LaTeX, mais cela demande un apprentissage non négligeable en temps. À quoi ressemble l'algorithme en question ?
pg
Modérateur
 
Messages: 2597
Inscription: Jeudi 14 Juin 2007, 23:31


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Magpie [Crawler] et 5 invités