PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : pstree-package: Zeilenumbruch an einem BaumKnoten?



Jollero
31-08-2006, 17:25
Hallo,

ich versuche gerade mit pstree ein paar nette Operatorbäume zu malen. Wie kann ich denn an einem Knoten einen Zeilenumbruch hinbekommen?? Mit \\ und \newline geht es bei mir net...

Minimalbeispiel:


\documentclass[10pt]{article}
%\usepackage{epic,eepic,ecltree}
%\addtolength{\textwidth}{12pt}
\usepackage{pstricks,pst-node,pst-tree}
\usepackage{amsmath}
\usepackage{amssymb}

\begin{document}

\thispagestyle{empty}

\pstree[treemode=D,nodesep=1ex, arrows=<-]{\TR{$\pi _{Name, Wohnort}$} }{
\pstree{\TR{$\Join$}}{
\TR{$Pers_{1}$\newline %hier eine newline
(Pers\_Nr, Name)}
\TR{$Pers_{2}$\\ %hier eine newline
(Pers\_Nr, Beruf, Gehalt, Geburtsjahr)}
\TR{$Pers_{3}$ %hier eine newline
(Pers\_Nr, Wohnort, Abteilung)}
}
}
\end{document}



Weiß jemand, wie das geht? Hab die Doku mal kurz durchgeblättert und hab nix gefunden...

Danke,
Jens

countbela666
31-08-2006, 22:46
Wie kann ich denn an einem Knoten einen Zeilenumbruch hinbekommen?Hast du's schon mal mit einer parbox versucht?

Grüße,
Marcel

Jollero
01-09-2006, 07:54
Hallo Marcel,

also ich hab es folgendermaßen probiert:



\documentclass[10pt]{article}
%\usepackage{epic,eepic,ecltree}
%\addtolength{\textwidth}{12pt}
\usepackage{pstricks,pst-node,pst-tree}
\usepackage{amsmath}
\usepackage{amssymb}

\begin{document}

\thispagestyle{empty}

\pstree[treemode=D,nodesep=1ex, arrows=<-]{\TR{$\pi _{Name}$} }{
\TR{\parbox{20mm}{$Pers_{1} (Pers\_Nr, Name$)}}

\end{document}


Leider bewirkt das auch keinen Zeilenumbruch, sondern nur ein Einrücken des Knoten...
Hat noch jemand einen Lösungsvorschlag?

Viele Grüße
Jens

RedCloud
01-09-2006, 14:44
Hallo Marcel,

also ich hab es folgendermaßen probiert:



\documentclass[10pt]{article}
%\usepackage{epic,eepic,ecltree}
%\addtolength{\textwidth}{12pt}
\usepackage{pstricks,pst-node,pst-tree}
\usepackage{amsmath}
\usepackage{amssymb}

\begin{document}

\thispagestyle{empty}

\pstree[treemode=D,nodesep=1ex, arrows=<-]{\TR{$\pi _{Name}$} }{
\TR{\parbox{20mm}{$Pers_{1} (Pers\_Nr, Name$)}}

\end{document}


Leider bewirkt das auch keinen Zeilenumbruch, sondern nur ein Einrücken des Knoten...
Hat noch jemand einen Lösungsvorschlag?


wo soll denn da in der parbox ein Zeilenumbruch sein?



\pstree[treemode=D,nodesep=1ex, arrows=<-]{\TR{$\pi _{Name, Wohnort}$} }{
\pstree{\TR{$\Join$}}{
\TR{\tabular{l}$Pers_{1}$\\
(Pers\_Nr, Name)\endtabular}
\TR{\tabular{l}$Pers_{2}$\\
(Pers\_Nr, Beruf, Gehalt, Geburtsjahr)\endtabular}
\TR{\tabular{l}$Pers_{3}$\\
(Pers\_Nr, Wohnort, Abteilung)\endtabular}
}}


rc

Jollero
02-09-2006, 13:29
Hallo RedCloud,

danke für den Vorschlag. Leider ist es bei mir so nicht lauffähig (Fehler undefined control sequence). Wenn ich tabular ohne den pstree-Kram benutze, funktioniert es... Kannst du ein lauffähiges Minimalbeispiel liefern?

Danke, viele Grüße
Jens

RedCloud
02-09-2006, 15:07
Hallo RedCloud,

danke für den Vorschlag. Leider ist es bei mir so nicht lauffähig (Fehler undefined control sequence). Wenn ich tabular ohne den pstree-Kram benutze, funktioniert es... Kannst du ein lauffähiges Minimalbeispiel liefern?




\documentclass{article}
\usepackage{pstricks,pst-tree}
\usepackage{amssymb}

\begin{document}

\pstree[treemode=D,nodesep=1ex, arrows=<-]{\TR{$\pi _{Name, Wohnort}$} }{%
\pstree{\TR{$\Join$}}{%
\TR{\tabular{l}$Pers_1$\\(Pers\_Nr, Name)\endtabular}
\TR{\tabular{l}$Pers_2$\\(Pers\_Nr, Beruf, Gehalt,\\ Geburtsjahr)\endtabular}
\TR{\tabular{l}$Pers_3$\\(Pers\_Nr, Wohnort,\\ Abteilung)\endtabular}
}%
}

\end{document}


rc

Jollero
02-09-2006, 15:38
Danke dir, RedCloud- es funktioniert!
Ich weiß nicht, woran es vorher gelegen hat! (wahrscheinlich Unfähigkeit meinerseits...)

Aber auf so eine Idee hätte ich ja auch mal kommen können :-)

Viele Grüße
Jens