Wiki Forum

[Tikz] Arbres de probabilité

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

Modérateur: Modérateurs_LaTeX

Règles du forum
Merci d'éviter le style SMS dans vos messages. Penser à utiliser les balises Code pour poster du code.
Penser à utiliser la fonction Recherche avant de poster un message.

[Tikz] Arbres de probabilité

Messagede projetmbc le Samedi 20 Février 2010, 18:32

Bonjour,
je souhaiterais obtenir l'un des arbres comme ci-dessous.

screenshot_01.png
screenshot_01.png (20.25 Ko) Vu 845 fois


Exemple-ArbreProba.jpg
Exemple-ArbreProba.jpg (8.6 Ko) Vu 846 fois


Il y a un exemple presque similaire fait avec tikz : http://www.texample.net/tikz/examples/probability-tree/ .
Toute info. est la bienvenue.
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede kojak le Samedi 20 Février 2010, 19:53

pro-probas du package professor.
pas d'aide par MP
kojak
Modérateur
 
Messages: 8135
Inscription: Samedi 18 Novembre 2006, 20:50
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Samedi 20 Février 2010, 20:01

Le problème est qu'il faut apparemment installer xcas, et cela je ne le veux pas car je veux une solution utilisant juste tikz.

Merci quand même.
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede evariste_G le Samedi 20 Février 2010, 20:24

Code: Tout sélectionner
\documentclass[10pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[french]{babel}
\usepackage{tikz}
\usepackage{amsmath}
\begin{document}
\begin{tikzpicture}
\fill (0,0) circle (1pt);
\node[circle,draw] (b11) at (2,2) {$\dfrac{40}{100}$};
\node[circle,draw] (b12) at (2,0) {$\dfrac{25}{100}$};
\node[circle,draw] (b13) at (2,-2) {$\dfrac{35}{100}$};

\node[rectangle,draw] (b21) at (5,4) {Math.};
\node[rectangle,draw] (b22) at (5,0) {Sc. Phys.};
\node[rectangle,draw] (b23) at (5,-4) {S.V.T.};

\node[circle,draw] (b31) at (8,5) {$\frac{45}{100}$};
\node[circle,draw] (b32) at (8,3) {$\frac{55}{100}$};
\node[circle,draw] (b33) at (8,1) {$\frac{24}{100}$};
\node[circle,draw] (b34) at (8,-1) {$\frac{76}{100}$};
\node[circle,draw] (b35) at (8,-3) {$\frac{60}{100}$};
\node[circle,draw] (b36) at (8,-5) {$\frac{40}{100}$};

\node[rectangle,draw] (b41) at (11,5) {F};
\node[rectangle,draw] (b42) at (11,3) {G};
\node[rectangle,draw] (b43) at (11,1) {F};
\node[rectangle,draw] (b44) at (11,-1) {G};
\node[rectangle,draw] (b45) at (11,-3) {F};
\node[rectangle,draw] (b46) at (11,-5) {G};

\draw (0,0) -- (b11.south west);
\draw (0,0) -- (b12.west);
\draw (0,0) -- (b13.north west);

\draw (b11.north east) -- (b21.west);
\draw (b12.east) -- (b22.west);
\draw (b13.south east) -- (b23.west);

\draw (b21.east) -- (b31.west);
\draw (b21.east) -- (b32.west);
\draw (b22.east) -- (b33.west);
\draw (b22.east) -- (b34.west);
\draw (b23.east) -- (b35.west);
\draw (b23.east) -- (b36.west);

\draw (b31.east) -- (b41.west);
\draw (b32.east) -- (b42.west);
\draw (b33.east) -- (b43.west);
\draw (b34.east) -- (b44.west);
\draw (b35.east) -- (b45.west);
\draw (b36.east) -- (b46.west);
\end{tikzpicture}
\end{document}


Qui donne :

arbre.jpg
evariste_G
Méga-utilisateur
 
Messages: 351
Inscription: Vendredi 19 Décembre 2008, 20:13
Statut actuel: Post-bac

Re: [Tikz] Arbres de probabilité

Messagede Altermundus le Dimanche 21 Février 2010, 12:48

Le code ci-dessus est bien sinon j'essaie de terminer mon package tkz-graph et il fait cela automatiquement (on obtient le deuxième exemple) mais pour le premier exemple, il est préférable de le faire à la main comme Evariste.
J'ai plusieurs exemples sinon en stock.

pro-probas du package professor, c'est bien mais un peu long si on a beaucoup de graphes (enfin je trouve ) et puis si on veut modifier ce n'est pas tikz mais metapost qu'il faut connaître. Donc cela dépend de ses connaissances sur ces sujets.

Alain
Altermundus
Méga-utilisateur
 
Messages: 369
Inscription: Lundi 28 Mai 2007, 10:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Dimanche 21 Février 2010, 19:51

Altermundus a écrit:... j'essaie de terminer mon package tkz-graph et il fait cela automatiquement (on obtient le deuxième exemple) mais pour le premier exemple, il est préférable de le faire à la main comme Evariste.

Je vais regarder cela.

Merci Evariste.
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Dimanche 21 Février 2010, 23:20

altermundus, dans la doc. de tkz-proba, tu devrais mettre un exemple d'arbre proba. comme dans la 2ème image.

PS : j'aime beaucoup ton nouveau site.
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede Altermundus le Dimanche 21 Février 2010, 23:46

projetmbc a écrit:altermundus, dans la doc. de tkz-proba, tu devrais mettre un exemple d'arbre proba. comme dans la 2ème image.

PS : j'aime beaucoup ton nouveau site.


Merci

Oui pour l'image mais je fais une macro pour automatiser ce genre d'arbres. J'ai ajouté aussi les graphes proba d'ordre 3
et puis il y a les arbres de Bernoulli, il y a aussi les graphes en 3D mais je n'ai pas encore fini le package ainsi que la doc.
La prochaine version ira sur CTAN mais des membres de sagetex utilisent ce package
et je dois garder pou eux, une certaine compatibilité et cela a ralenti le travail

Alain
Altermundus
Méga-utilisateur
 
Messages: 369
Inscription: Lundi 28 Mai 2007, 10:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Dimanche 21 Février 2010, 23:59

Peux-tu mettre un exemple ici, voir si je peux "compter" sur ton package ?
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede Altermundus le Lundi 22 Février 2010, 01:09

projetmbc a écrit:Peux-tu mettre un exemple ici, voir si je peux "compter" sur ton package ?


Pour le site tu pensais à [url]altermundus.com[/url] ou bien à .fr sinon ce n'est pas un package sur les probas mais sur les graphes c'est pour cela que cela arrive en dernier

Bon je ne sais pas trop ce que tu veux mais mes macros ne sont pas terminées donc je ne peux te montrer que ce que j'ai actuellement.
Je n'ai pas choisi les styles, à vrai dire ce n'est pas le plus difficile à faire aussi pour le moment je me consacre à toutes les macros primaires sur
les graphes.
Sinon on peut obtenir exactement l'image que tu as proposée. Pour te donner une idée, cela va faire tous les graphes que l'on peut voir en TES.
Avec un choix de styles en plus pour tous les éléments.


Alain
Fichiers joints
Capture d’écran 2010-02-22 à 00.00.47.png
Capture d’écran 2010-02-22 à 00.00.14.png
Capture d’écran 2010-02-21 à 23.45.04.png
Capture d’écran 2010-02-21 à 23.44.13.png
Altermundus
Méga-utilisateur
 
Messages: 369
Inscription: Lundi 28 Mai 2007, 10:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Lundi 22 Février 2010, 11:29

C'est pas mal mais j'ai deux petites suggestions :

  • L'écriture des probabilités en diagonale par dessus le trait est peu pratique, il pourrait être pas mal d'avoir un mode "écriture horizontale" comme dans la 2nde image que j'ai mise ici.
  • Quand l'univers n'est pas indiqué au tout début, il serait plus esthétique de relier les traits au départ, un peu comme tu le fais avec la puce mais sans puce.

PS : rien à voir avec le schmilblick, mais je voulais savoir si tu avais "améliorer" les doubles barres des tableaux de variation : gestion de l'espacement, qui est un peu faible à mon goût, et disparition du trou aux extrémités des doubles barres.
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede Altermundus le Lundi 22 Février 2010, 13:34

projetmbc a écrit:C'est pas mal mais j'ai deux petites suggestions :


[*]L'écriture des probabilités en diagonale par dessus le trait est peu pratique, il pourrait être pas mal d'avoir un mode "écriture horizontale" comme dans la 2nde image que j'ai mise ici.


Avec TikZ, ce sont les calculs qui posent des problèmes mais pour le reste c'est facile. Ici c'est une simple histoire de style, je vais faire comme pour les autres packages et proposer des styles par défaut et donner la possibilité de personnaliser

projetmbc a écrit:[*]Quand l'univers n'est pas indiqué au tout début, il serait plus esthétique de relier les traits au départ, un peu comme tu le fais avec la puce mais sans puce.

Idem c'est prévu encore un seul problème de style

projetmbc a écrit:PS : rien à voir avec le schmilblick, mais je voulais savoir si tu avais "améliorer" les doubles barres des tableaux de variation : gestion de l'espacement, qui est un peu faible à mon goût, et disparition du trou aux extrémités des doubles barres.


Oui tout est fait, mais je viens de me rendre compte que je n'ai pas mis le chapitre sur les styles dans la doc.

Dans le package, on trouve les styles au début, le voici.
dans ton cas il suffit de modifier
\tikzset{double style/.style = {double,very thick,double distance=2pt}}
Pour les styles qui comporte des @, je vais devoir procéder autrement afin de faciliter
le travail pour les débutants en TeX ou en TikZ.

Quel est ce problème de trous aux extrémités des doubles barres? j'avoue avoir oublié mais sur les exemples de la doc, je n'en ai pas vu. Si tu as un exemple, il faut me l'indiquer !


Code: Tout sélectionner
%<------------------------------   Styles       ----------------------------->
\tikzset{node style/.style    = {inner sep   =  2pt,
                                 outer sep   =  2pt,
                                 fill        =  \cmdTAB@tbs@colorT}}
\tikzset{low left/.style      = {above left  =  2pt}}
\tikzset{low right/.style     = {above right =  2pt}}
\tikzset{high right/.style    = {below right =  2pt}}
\tikzset{high left/.style     = {below left  =  2pt}}
\tikzset{low/.style           = {above       =  2pt}}
\tikzset{high/.style          = {below       =  2pt}}

\tikzset{tan style/.style     = {>           = latex',->,
                                 color       = \cmdTAB@TG@color}}
\tikzset{arrow style/.style   = {\cmdTAB@VA@color,
                                 ->,
                                 >           = latex',
                                 shorten >   =  2pt,
                                 shorten <   =  2pt}}
\tikzset{from style/.style     = {shorten >   = 2pt,
                                 shorten <   = 2pt,
                                 line width  = 0.4pt,
                                 >           = latex',
                                 ->,
                                 dotted}}

\tikzset{h style/.style = {fill=gray,opacity=0.4}}
\tikzset{double style/.style = {double}}
\tikzset{t style/.style = {style  = dotted}}


Alain
Altermundus
Méga-utilisateur
 
Messages: 369
Inscription: Lundi 28 Mai 2007, 10:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Lundi 22 Février 2010, 15:51

Altermundus a écrit:Dans le package, on trouve les styles au début, le voici.
dans ton cas il suffit de modifier
\tikzset{double style/.style = {double,very thick,double distance=2pt}}

Un peu "root" comme méthode. Il serait sympa d'avoir accès à ceci directement via une option. Non ?

Altermundus a écrit:Quel est ce problème de trous aux extrémités des doubles barres? j'avoue avoir oublié mais sur les exemples de la doc, je n'en ai pas vu. Si tu as un exemple, il faut me l'indiquer !

J'ai fait un zoom.
screenshot_01.png
screenshot_01.png (9.23 Ko) Vu 518 fois

Je n'ai pas testé ce que cela donne à l'impression.

Pour ce qui est du package pour les arbres de proba., je suis intéressé par son évolution.
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede Altermundus le Lundi 22 Février 2010, 19:55

projetmbc a écrit:
Altermundus a écrit:Dans le package, on trouve les styles au début, le voici.
dans ton cas il suffit de modifier
\tikzset{double style/.style = {double,very thick,double distance=2pt}}

Un peu "root" comme méthode. Il serait sympa d'avoir accès à ceci directement via une option. Non ?


Bin "root" si on veut mais tu es un des rares à me demander ceci. En principe, ce n'est pas franchement l'option
qui réellement nécessaire. Je peux en effet mettre cela dans une option mais dans ce cas, il faut que je fasse
la même chose pour les flèches etc ...
Possible mais là j'ai d'autres trucs à terminer . Tu peux me le rappeler à l'occasion si j'oublie (surtout
avant ma retraite l'an prochain).

D'un autre côté, c'est un peu le moyen de forcer les utilisateurs à se mettre à TikZ car ce que tu appelles "root"
c'est la façon de TikZ de définir un style.
En gros je vais devoir faire une macro
\SetupTabStyle[] ou un truc du même genre


projetmbc a écrit:J'ai fait un zoom.
screenshot_01.png

Je n'ai pas testé ce que cela donne à l'impression.


Un zoom mais quelle idée ??? pour aller chercher un petit trou ! :) Bon j'avais oublié la chose :(
Le problème est relativement simple mais pas facile à réaliser.
Les doubles barres viennent après le tracé principale et le banc qui est au milieu de la double barre
efface le trait. Il faudrait pouvoir mettre du transparent au milieu ! ( ce n'est pas prévu :()

Je pourrais tout alourdir en mettant une macro \tkzDrawTab que l'on place à la fin de la construction
mais là ce sont les doubles barres qui seront coupées dans certains cas.
C'est assez facile à faire
Code: Tout sélectionner
\newcommand*{\tkzDrawTab}{%
\ifTAB@tbs@nocadre%
\foreach \x in {1}{\draw[line width = \cmdTAB@tbs@lw] (T\x 0) --(T\x \maxtkz@cnt@lg);}%
\setcounter{tkz@cnt@temp}{\maxtkz@cnt@lg}%
\addtocounter {tkz@cnt@temp}{-1}%
\xdef\maxtkz@cnt@lg{\thetkz@cnt@temp}%
\foreach \y in {1,...,\maxtkz@cnt@lg}{\draw[line width = \cmdTAB@tbs@lw] (T0\y) --(T2\y);}%
\else
\foreach \y in {0,...,\maxtkz@cnt@lg}{\draw[line width = \cmdTAB@tbs@lw] (T0\y) --(T2\y);}%
\foreach \x in {0,1,2}{\draw[line width = \cmdTAB@tbs@lw] (T\x 0) --(T\x \maxtkz@cnt@lg);}%
\fi
}%


Récupérer le tkz-tab original, le mettre dans un texmf perso puis
mettre à la fin de tkz-tab le code ci-dessus et on efface le code correspondant en début de fichier.
ensuite dans le code de création du tableau mettre \tkzDrawTab à la fin.
À voir ( les lignes horizontales vont passer par dessus les doubles barres et si on utilise
des traits en couleur pour les valeurs intermédiaires alors elles seront coupées.

Sinon en fonction de l'épaisseur du trait des lignes verticales,
je modifie les extrémités des segments qui supportent les doubles barres (je dois retirer
de chaque côté, la moité de l'épaisseur d'une ligne. Avec un langage normal c'est vite fait mais
avec TeX, c'est moins drôle surtout que le style "double" est appelé un certain nombre de fois !!
je vais voir si je peux faire facilement

Une autre possibilité c'est de placer deux traits parallèles sans utiliser le style double mais
cela ajoute un paquet de lignes au code ... à voir


projetmbc a écrit:Pour ce qui est du package pour les arbres de proba., je suis intéressé par son évolution.


En principe, j'espère pouvoir finir assez vite cette partie !

Alain
Altermundus
Méga-utilisateur
 
Messages: 369
Inscription: Lundi 28 Mai 2007, 10:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede Altermundus le Lundi 22 Février 2010, 21:10

Bon j'ai une solution pour les trous avec un peu de calcul

Alain
Altermundus
Méga-utilisateur
 
Messages: 369
Inscription: Lundi 28 Mai 2007, 10:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Lundi 22 Février 2010, 23:07

Altermundus a écrit:Possible mais là j'ai d'autres trucs à terminer . Tu peux me le rappeler à l'occasion si j'oublie (surtout
avant ma retraite l'an prochain).

D'un autre côté, c'est un peu le moyen de forcer les utilisateurs à se mettre à TikZ car ce que tu appelles "root"
c'est la façon de TikZ de définir un style.
En gros je vais devoir faire une macro
\SetupTabStyle[] ou un truc du même genre

Ce serait pas mal du tout. Je te harcèlerais tant que cela ne sera pas fait... :mrgreen:

Altermundus a écrit:Un zoom mais quelle idée ??? pour aller chercher un petit trou ! :) Bon j'avais oublié la chose :(
Le problème est relativement simple mais pas facile à réaliser.
Les doubles barres viennent après le tracé principale et le banc qui est au milieu de la double barre
efface le trait. Il faudrait pouvoir mettre du transparent au milieu ! ( ce n'est pas prévu :()
...
Une autre possibilité c'est de placer deux traits parallèles sans utiliser le style double mais
cela ajoute un paquet de lignes au code ... à voir

Je pensais que tu faisais comme cela...

Merci pour la disponibilité.
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Lundi 22 Février 2010, 23:08

Altermundus a écrit:Bon j'ai une solution pour les trous avec un peu de calcul

Super !
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede Altermundus le Mardi 23 Février 2010, 11:04

projetmbc a écrit:
Altermundus a écrit:Bon j'ai une solution pour les trous avec un peu de calcul

Super !


Encore plus super, tu risques de devoir tester la nouvelle version et la nouvelle doc.

J'ai créé une nouvelle macro \tkzTabSetup pour ceux qui ne veulent pas apprendre
des notions de TikZ. on peut modifier le style des double barres, des flèches, des traits
verticaux etc ...

Simplement c'est assez généraliste, mais suffisant, enfin je suppose, ensuite j'explique comment
faire du "root" pour ceux qui veulent quelque chose de plus perfectionné.

Le fait de combler les trous a entraîné que j'ai dû modifier les zones grisées (ou hachurées) qui
peuvent suivre les doubles barres, du coup j'ai corrigé une autre imperfection.

Je donne l'adresse, (en fin de journée en principe ) pour récupérer la doc, le package et quelques
exemple.
J'ai zoomé à 8000 %, à priori cela fonctionne correctement mais je n'ai pas vu tous les exemples
un à un :(

Alain
Altermundus
Méga-utilisateur
 
Messages: 369
Inscription: Lundi 28 Mai 2007, 10:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede projetmbc le Mardi 23 Février 2010, 15:19

Altermundus a écrit:Encore plus super, tu risques de devoir tester la nouvelle version et la nouvelle doc.

J'ai créé une nouvelle macro \tkzTabSetup pour ceux qui ne veulent pas apprendre
des notions de TikZ. on peut modifier le style des double barres, des flèches, des traits
verticaux etc ...

Simplement c'est assez généraliste, mais suffisant, enfin je suppose, ensuite j'explique comment
faire du "root" pour ceux qui veulent quelque chose de plus perfectionné.

C'est super super. Noël après l'heure... Un truc généraliste et du "root" pour plus de personnalisation, c'est nickel.

Altermundus a écrit:J'ai zoomé à 8000 %, à priori cela fonctionne correctement mais je n'ai pas vu tous les exemples
un à un :(

Par contre, je suis désolé mais je travaille généralement avec un zoom un peu plus élevé... :mrgreen:

Altermundus a écrit:Je donne l'adresse, (en fin de journée en principe ) pour récupérer la doc, le package et quelques
exemple.

Je regarderais cela après quelques kilomètres en vélo. D'ailleurs, il faut que je me prépare.
projetmbc
Giga-utilisateur
 
Messages: 999
Inscription: Samedi 29 Décembre 2007, 01:58
Statut actuel: Actif et salarié | Enseignant

Re: [Tikz] Arbres de probabilité

Messagede Altermundus le Mercredi 24 Février 2010, 00:38

La doc est faite et les ajouts sont là ainsi que les corrections, il me reste juste un petit bug d'affichage
quand on utilise une couleur pour les zones interdites. Il faudra attendre demain

Alain
Altermundus
Méga-utilisateur
 
Messages: 369
Inscription: Lundi 28 Mai 2007, 10:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

Qui est en ligne

Utilisateurs parcourant ce forum: Google Adsense [Bot] et 2 invités