PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Baumdiagramm mit Latex



Climaxbruno
03-07-2011, 10:05
Hallo ihr alle,

ich habe folgendes Problem: Ich möchte für eine Hausaufgabe ein relativ simples Baumdiagramm mit Mictex erstellen. Ich habe es auch hinbekommen, mit dem ecltree-package. Das Resultat ist aber herrlich hässlich:

\begin{bundle}{}
\chunk[$\frac{3}{7}$]{\begin{bundle}{Blaue Kugel}
\chunk[$\frac{1}{3}$]{Blaue Kugel}
\chunk[$\frac{2}{3}$]{Rote Kugel}
\end{bundle}}
\chunk[$\frac{4}{7}$]{\begin{bundle}{Rote Kugel}
\chunk[$\frac{1}{2}$]{Blaue Kugel}
\chunk[$\frac{1}{2}$]{Rote Kugel}
\end{bundle}}
\end{bundle}

Als Alternative habe ich die Möglichkeit gefunden, ein Baumdiagramm mit dem pstricks-Package zu machen. Nur erscheinen auf dem pdf nach dem kompilieren zwar die Beschriftungen der einzelnen Knoten, aber nicht die Verbindungsstriche zwischen den Knoten. Außerdem gibt Texnic-Center mehrere Fehlermeldungen aus. Auch wenn ich den Beispiel-Code ausprobiere, den ich im Internet zu pstricks gefunden habe, werden die Striche nicht angezeigt und es hagelt Fehlermeldungen. Folgend dieser Beispiel-Code:

\pstree{\TR{grandfather}}
{\pstree{\TR{uncle}}
{\TR{cousin}}
\pstree{\TR{father}}
{\pstree{\TR{brother}}
{\TR{nephew}}
\pstree{\TR{me}}
{\pstree{\TR{son}}
{\TR{grandson}}
}
}
}

Ich habe das pstricks-Package mit \usepackage{pstricks,pst-node,pst-tree} eingebunden. Muss ich noch irgendwas anderes einbinden, damit das ganze funktioniert?

Lg, Bruno

mechanicus
03-07-2011, 10:41
Muss ich noch irgendwas anderes einbinden, damit das ganze funktioniert?
Um pstricks zu verwenden, musst du mittels latex=>ps=>pdf kompilieren. Alternativ kannst du auch weiterhin mittels pdflatex (latex=>pdf) kompilieren, wenn du ein Zusatzpaket verwendest. Siehe hierzu:
pstricks pdfoutput (http://tug.org/PSTricks/main.cgi?file=pdf/pdfoutput)

Marco

Climaxbruno
03-07-2011, 12:31
Hi mechanicus, danke für die schnelle Antwort. Die Kompilierung von Latex nach ps und nach DVI funktioniert problemlos. Aber wie kriege ich dann eine umwandlung von ps oder DVI nach PDF hin? Oder kann ich im Texniccenter eine Ausgabe erstellen, die die Schritte latex=>ps=>pdf selbstständig macht? Und wenn ja wie?

Lg, Bruno

edit: Hat sich schon erledigt, habs gefunden: Ich hatte Ghostscript noch nicht installiert. Hab es nachgeholt, per alt+F7 nochmal den Ausgabeassistenten durchlaufen lassen und voilá: Ich hatte ein neues Ausgabeprofil: Latey => ps => pdf.

Nochmal vielen Dank für die Hilfe!!!

mechanicus
03-07-2011, 12:44
Hi,

dieses Ausgabeprofil sollte bei TexnicCenter dabei sein. Wenn nicht, dann prüfe, ob du ghostscript und ghostview installiert hast und dann installiere TexnicCenter neu. Ist wohl in dieser Situation das einfachste.

Gruß
Marco

Climaxbruno
03-07-2011, 13:23
Sorry, ich nochmal mit einer wirklich letzten Frage: Ich habe jetzt einen Baum, genauso wie ich ihn mir vorgestellt habe:

\pstree{\Tcircle{}}
{\pstree{\Toval{Blaue Kugel}\tlput{$\frac{3}{7}$}}
{\Toval{Blaue Kugel}\tlput{$\frac{1}{3}$}\Toval{Rote Kugel}\trput{$\frac{2}{3}$}}

\pstree{\Toval{Rote Kugel}\trput{$\frac{4}{7}$}}
{\Toval{Blaue Kugel}\tlput{$\frac{1}{2}$}\Toval{Rote Kugel}\trput{$\frac{1}{2}$}}
}

Jetzt möchte ich unter den vier untersten Blättern aber noch eine Beschriftung anfügen, also unter den unteren Ovalen noch jeweils kurz zwei, drei Wörter hinschreiben. Gibt es dafür einen Befehl?

voss
03-07-2011, 13:29
Jetzt möchte ich unter den vier untersten Blättern aber noch eine Beschriftung anfügen, also unter den unteren Ovalen noch jeweils kurz zwei, drei Wörter hinschreiben. Gibt es dafür einen Befehl?

Beispiel für einen Zweig:


\pstree{\Tcircle{}}{%
\pstree{\Toval{Blaue Kugel}\tlput{$\frac{3}{7}$}}
{\Toval{Blaue Kugel}\tlput{$\frac{1}{3}$}\Toval[name=RK0]{Rote Kugel}\trput{$\frac{2}{3}$}}
\uput{20pt}[-90](RK0){Rot}


Herbert

mechanicus
03-07-2011, 13:39
\documentclass[a4paper]{article}
\usepackage{pst-tree}
\begin{document}

\def\explainTree#1#2{%
\uput{20pt}[-90](#1){\parbox{2cm}{#2}}}
\pstree{\Tcircle{}}
{
\pstree{\Toval{Blaue Kugel}\tlput{$\frac{3}{7}$}}
{\Toval[name=A]{Blaue Kugel}\tlput{$\frac{1}{3}$}
\Toval[name=B]{Rote Kugel} \trput{$\frac{2}{3}$}}

\pstree{\Toval{Rote Kugel}\trput{$\frac{4}{7}$}}
{\Toval[name=C]{Blaue Kugel}\tlput{$\frac{1}{2}$}
\Toval[name=D]{Rote Kugel} \trput{$\frac{1}{2}$}
}
}
\explainTree{A}{Erkl\"arender Text auch \"uber zwei Zeilen}
\explainTree{B}{Erkl\"arender Text auch \"uber zwei Zeilen}
\explainTree{C}{Erkl\"arender Text auch \"uber zwei Zeilen}
\explainTree{D}{Erkl\"arender Text auch \"uber zwei Zeilen}

\end{document}

Gruß
Marco

PS: Nächstes mal aktualisiere ich vorher ;-(

Climaxbruno
03-07-2011, 13:40
PERFEKT! SUPER!! Vielen Dank!!!

Kannst du mir vielleicht noch kurz den Code erklären? Also ich bin schon soweit, dass ich mal denke:
\upu t = Text um das Blatt herum plazieren
{20pt} = der Abstand vom Blattmittelpunkt
[-90] = Die Ausrichtung in Grad (+90 ist oben)
Aber wofür steht das (RKO)? Und ich habe gerade gesehen, dass ich die Option [name=RKO] vergessen habe, es funktioniert trotzdem.

Ich versuche immer den Code auch zu verstehen, dann behalte ich ihn besser. Wenn du noch kurz Zeit hättest mir das eben zu erklären, wäre das echt super von dir.

Aber schon mal danke für die Hilfe!!

edit: Ui, und noch ne Alternative. Großes Danke, mechanicus! Euer Forum ist echt der Hammer!!

mechanicus
03-07-2011, 13:46
Hi,

den Befehl findest du in der Dokumentation pstricks (texdoc pstricks) Seite 43:


\uput*{labelsep}[refangle]{rotation}(x,y){stuff }


Ich habe zudem das gleiche wie Herbert. Nur ich habe es mittels parbox in einem separaten Befehl ausgelagert.

Gruß
Marco

Climaxbruno
03-07-2011, 14:07
Super, danke. Habe mal gerade ein wenig durch die Dokumentation geblättert, Pstricks ist ja echt riesig umfangreich. Werd ich wohl in nächster Zeit häufiger benutzen.

Nochmal danke an euch 2 für die super Hilfe.

Gruß, Bruno

Climaxbruno
03-07-2011, 16:35
Und da bin ich auch schon wieder (wie Unkraut):

Ich habe mittlerweile gemerkt, dass ich den Baum völlig falsch konstruiert habe. Dank eurer Hilfe habe ich zwar inzwischen den Code für den richtigen Baum problemlose hinbekommen, aber das Endergebnis stellt mich nun vor ein neues Problem: Der Baum ist zu groß. Habe die Seite auch schon auf Querformat gestellt, aber es fehlt immer noch der halbe Baum. Gibt es eine Möglichkeit einen PSTricks-Baum zu verkleinern? Ich füge mal im folgenden den Code von dem Monster-Teil an.

\pstree{\Tcircle{}}
{\pstree{\Toval{$B_1$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_2$}\tlput{$\frac{1}{6}$}\Toval{$B_3$}\t lput{$\frac{1}{6}$}\Toval{$R_1$}\tlput{$\frac{1}{6 }$}\Toval{$R_2$}\trput{$\frac{1}{6}$}\Toval{$R_3$} \trput{$\frac{1}{6}$}\Toval{$R_4$}\trput{$\frac{1} {6}$}}



{\pstree{\Toval{$B_2$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}\Toval{$B_3$}\t lput{$\frac{1}{6}$}\Toval{$R_1$}\tlput{$\frac{1}{6 }$}\Toval{$R_2$}\trput{$\frac{1}{6}$}\Toval{$R_3$} \trput{$\frac{1}{6}$}\Toval{$R_4$}\trput{$\frac{1} {6}$}}


{\pstree{\Toval{$B_3$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}\Toval{$B_2$}\t lput{$\frac{1}{6}$}\Toval{$R_1$}\tlput{$\frac{1}{6 }$}\Toval{$R_2$}\trput{$\frac{1}{6}$}\Toval{$R_3$} \trput{$\frac{1}{6}$}\Toval{$R_4$}\trput{$\frac{1} {6}$}}


{\pstree{\Toval{$R_1$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}\Toval{$B_2$}\t lput{$\frac{1}{6}$}\Toval{$B_3$}\tlput{$\frac{1}{6 }$}\Toval{$R_2$}\trput{$\frac{1}{6}$}\Toval{$R_3$} \trput{$\frac{1}{6}$}\Toval{$R_4$}\trput{$\frac{1} {6}$}}


{\pstree{\Toval{$R_2$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}\Toval{$B_2$}\t lput{$\frac{1}{6}$}\Toval{$B_3$}\tlput{$\frac{1}{6 }$}\Toval{$R_1$}\trput{$\frac{1}{6}$}\Toval{$R_3$} \trput{$\frac{1}{6}$}\Toval{$R_4$}\trput{$\frac{1} {6}$}}


{\pstree{\Toval{$R_3$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}\Toval{$B_2$}\t lput{$\frac{1}{6}$}\Toval{$B_3$}\tlput{$\frac{1}{6 }$}\Toval{$R_1$}\trput{$\frac{1}{6}$}\Toval{$R_2$} \trput{$\frac{1}{6}$}\Toval{$R_4$}\trput{$\frac{1} {6}$}}


{\pstree{\Toval{$R_4$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}\Toval{$B_2$}\t lput{$\frac{1}{6}$}\Toval{$B_3$}\tlput{$\frac{1}{6 }$}\Toval{$R_1$}\trput{$\frac{1}{6}$}\Toval{$R_2$} \trput{$\frac{1}{6}$}\Toval{$R_3$}\trput{$\frac{1} {6}$}}}}}}}}}


Gruß, Bruno

mechanicus
03-07-2011, 17:22
Hi,

bitte gewöhne dir an, komplette Minimalbeispiel zu erstellen und diese in der passenden Code-Umgebung einzubetten. So wie jetzt kommt es zu copy-paste Fehlern, in dem sich Leerzeichen einschleichen.


\documentclass[a4paper]{scrartcl}
\usepackage[landscape]{geometry}
\usepackage{graphicx}
\usepackage{pst-tree}
\begin{document}
\resizebox{\textwidth}{!}{%
\psframebox{%
\pstree{\Tcircle{}}
{
\pstree{\Toval{$B_1$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$} \trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$B_2$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$B_3$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$R_1$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$R_2$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}
\pstree{\Toval{$R_3$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$R_4$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}}%
}}}
\clearpage
\resizebox{\textwidth}{!}{%
\psframebox{%
\pstree{\Tcircle{}}
{
\pstree{\Toval{$B_1$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$} \trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$B_2$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree[thislevelsep=4cm]{\Tp{}}{\pstree{\Tp{}}{%
\pstree{\Toval{$B_3$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$R_1$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$R_2$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}
}}
\pstree{\Toval{$R_3$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$R_4$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}}%
}
}}
\clearpage
\resizebox{\textwidth}{!}{%
\psframebox{%
\pstree{\Tcircle{}}
{
\pstree{\Toval{$B_1$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$} \trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree[thislevelsep=5cm]{\Tp{}}{\pstree{\Tp{}}{%
\pstree{\Toval{$B_3$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}
\pstree[thislevelsep=5cm]{\Tp{}}{\pstree{\Tp{}}{%
\pstree{\Toval{$R_1$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$R_2$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}

\pstree{\Toval{$R_3$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}
}}
\pstree{\Toval{$R_4$}\tlput{$\frac{1}{7}$}}
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_2$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\trput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}}%
}}


\pstree{\Toval{$B_2$}\tlput{$\frac{1}{7}$}}%
{\Toval{$B_1$}\tlput{$\frac{1}{6}$}%
\Toval{$B_3$}\tlput{$\frac{1}{6}$}%
\Toval{$R_1$}\tlput{$\frac{1}{6}$}%
\Toval{$R_2$}\trput{$\frac{1}{6}$}%
\Toval{$R_3$}\trput{$\frac{1}{6}$}%
\Toval{$R_4$}\trput{$\frac{1}{6}$}}
}
}}

\end{document}

Marco

Climaxbruno
03-07-2011, 17:28
Super, genau wie ichs mir vorgestellt habe, allervielsten Dank, Marco.

Das mit dem Minimalbeispiel merk ich mir, sorry.

Ich wünsch dir noch nen schönen Abend.

Viele Grüße, Bruno!!