Arbre avec PStricks (position du texte)

Tout ce qui concerne le langage LaTeX et ses variantes. Ce langage est supporté sur le forum via les balises tex.

Modérateur : gdm_tex

Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
zorba
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 522
Inscription : lundi 01 juin 2009, 11:35

Arbre avec PStricks (position du texte)

Message par zorba »

Bonjour,
j'utilise de temps en temps PStricks pour tracer des arbres dans des exercices de probabilités. Pas assez souvent pour connaitre les options et leurs effets sur le tracé de l'arbre.
Dans l'exemple joint de l'ECM, je cherche à mettre le libellé au même niveau que l'extrémité de la branche, cela semble tout simple et je ne trouve pas comment coder les options pour le faire.
Voici un ECM avec l'exemple réel que je cherche à tracer :

Code : Tout sélectionner

\documentclass[11pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[frenchb]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{geometry,url}
\usepackage{lipsum,xcolor,pst-eucl,pstricks-add,pst-fun,pst-tree}
\geometry{textwidth=130mm,textheight=260mm,top=2cm}
\author{zorba}
\newcommand{\xb}[1]{\textcolor{blue}{\,-\,$\scriptscriptstyle #1$}}
\newcommand{\xc}[1]{\ensuremath{ \scriptscriptstyle #1}}
\begin{document}
\newcount\hh
\newcount\mm
\mm=\time
\hh=\time
\divide\hh by 60
\divide\mm by 60
\multiply\mm by 60
\mm=-\mm
\advance\mm by \time
\def\hhmm{\number\hh\string:\ifnum\mm<10{}0\fi\number\mm}
\noindent \today\, à \hhmm  Fichier : \jobname

Tracé d'un arbre représentant un loterie avec 120 billets, dont 3 donnent 4 places gratuites, 6 donnent 3 places gratuites, 18 donnent 2 laces gratuites et 42 donnent une place gratuite.

Je souhaite placer le libellé au même niveau que l'extrémité de la branche et pas au dessus comme dans les deux exemples ci-dessous. Mais je ne trouve pas quelle option utiliser à cette fin.

\begin{center}
\psset{nodesep=3mm,levelsep=55mm,treesep=15mm,treemode=R}

\pstree{\TR{}}{\TR{4 places gratuites}^{$\scriptstyle \textrm{P}_4=\frac{1}{40}$} \TR{3 places gratuites}^{$\scriptstyle \textrm{P}_3=\frac{1}{20}$}  \TR{2 places gratuites}^{$\scriptstyle \textrm{P}_2=\frac{3}{20}$}  \TR{1 place gratuite}_{$\scriptstyle \textrm{P}_1=\frac{7}{40}$} \TR{rien}_{$\scriptstyle \textrm{P}_4=\frac{17}{40}$}}

\end{center}

\begin{center}
\psset{nodesep=3mm,levelsep=*55mm,treesep=15mm,treemode=R}

\pstree{\TR{}}{\TR{4 places gratuites}^{$\scriptstyle \textrm{P}_4=\frac{1}{40}$} \TR{3 places gratuites}^{$\scriptstyle \textrm{P}_3=\frac{1}{20}$}  \TR{2 places gratuites}^{$\scriptstyle \textrm{P}_2=\frac{3}{20}$}  \TR{1 place gratuite}_{$\scriptstyle \textrm{P}_1=\frac{7}{40}$} \TR{rien}_{$\scriptstyle \textrm{P}_4=\frac{17}{40}$}}


\end{center}
\end{document}


Je remercie d'avance les personnes qui vont regarder ce sujet et m'indiquer comment faire avec PStricks-tree, même si d'autres solutions sont toujours disponibles.
Bonne journée à tous.
Pierre
On se lasse de tout, excepté d'apprendre. Virgile

djiblamb
Utilisateur confirmé
Utilisateur confirmé
Messages : 89
Inscription : samedi 27 septembre 2008, 10:58

Re: Arbre avec PStricks - position texte

Message par djiblamb »

Bonjour.

Pour mettre le libellé au même niveau que l'extrémité de la branche, rajoute, après chacun des \TR du deuxième niveau, la séquence {}~[tnpos=r], qui permet de placer le label à droite de l'extrémité de la branche. Voir l'ECM joint (j'ai repris une partie de celui que tu avais fourni).
L'option tnpos accepte aussi les arguments l, a (pour above) et b (bottom).

Code : Tout sélectionner

\documentclass[11pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[frenchb]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{geometry,url}
\usepackage{lipsum,xcolor,pst-eucl,pstricks-add,pst-fun,pst-tree}
\geometry{textwidth=130mm,textheight=260mm,top=2cm}
\author{zorba}
\newcommand{\xb}[1]{\textcolor{blue}{\,-\,$\scriptscriptstyle #1$}}
\newcommand{\xc}[1]{\ensuremath{ \scriptscriptstyle #1}}
\begin{document}
\newcount\hh
\newcount\mm
\mm=\time
\hh=\time
\divide\hh by 60
\divide\mm by 60
\multiply\mm by 60
\mm=-\mm
\advance\mm by \time
\def\hhmm{\number\hh\string:\ifnum\mm<10{}0\fi\number\mm}
\noindent \today\, à \hhmm  Fichier : \jobname

Tracé d'un arbre représentant un loterie avec 120 billets, dont 3 donnent 4 places gratuites, 6 donnent 3 places gratuites, 18 donnent 2 places gratuites et 42 donnent une place gratuite.

Je souhaite placer le libellé au même niveau que l'extrémité de la branche et pas au dessus comme dans les deux exemples ci-dessous. Mais je ne trouve pas quelle option utiliser à cette fin.

\begin{center}
\psset{nodesep=3mm,levelsep=55mm,treesep=15mm,treemode=R}

\pstree{\TR{}}{\TR{}~[tnpos=r]{4 places gratuites}^{$\scriptstyle \textrm{P}_4=\frac{1}{40}$} \TR{}~[tnpos=r]{3 places gratuites}^{$\scriptstyle \textrm{P}_3=\frac{1}{20}$}  \TR{}~[tnpos=r]{2 places gratuites}^{$\scriptstyle \textrm{P}_2=\frac{3}{20}$}  \TR{}~[tnpos=r]{1 place gratuite}_{$\scriptstyle \textrm{P}_1=\frac{7}{40}$} \TR{}~[tnpos=r]{rien}_{$\scriptstyle \textrm{P}_4=\frac{17}{40}$}}

\end{center}

\end{document}
Bonne journée aussi.
djib

zorba
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 522
Inscription : lundi 01 juin 2009, 11:35

Re: Arbre avec PStricks - position texte

Message par zorba »

Bonjour,
c'est exactement ce que je cherchais à faire et que je ne comprenais pas dans la documentation.
Merci et bonne journée.
Pierre
On se lasse de tout, excepté d'apprendre. Virgile

rebouxo
Modérateur global
Modérateur global
Messages : 6962
Inscription : mercredi 15 février 2006, 13:18
Localisation : le havre

Re: Arbre avec PStricks - position texte

Message par rebouxo »

On doit pouvoir passer cette option de manière globale ?

Olivier
A line is a point that went for a walk. Paul Klee.
Par solidarité, pas de MP.