PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : tikzpicture innerhalb von figure funktioniert nicht wie erwartet



bliss
24-08-2010, 22:28
Hallo,

ich habe ein Problem mit tikzpicture. Ich benutze das Paket, um Bäume zu zeichnen. (Mein Minimalbeispiel unten ist nicht ganz minimal, aber man muß die volle Breite des Baums sehen, deswegen habe ich die Zeichnung selbst nicht vereinfacht.) Die Bäume werden innerhalb des Bereichs, in dem auch der Text zu sehen ist, linksbündig dargestellt. So weit so gut. Durch Verwenden der center-Umgebung werden sie zentriert dargestellt. Immer noch gut.

Jetzt wollte ich aber gerne noch captions und labels haben, also dachte ich an die ganz normale figure-Umgebung. Und dann dreht die Darstellung des tikzpictures innerhalb der figure leider etwas durch. Ich habe keine Ahnung, was da los ist, kann mir bitte jemand weiterhelfen?

Das Ziel ist, eine Darstellung zu bekommen, die so aussieht, wie wenn man
% \begin{figure}
% \caption{...}
% \label{...}
% \end{figure}
auskommentiert. Nur eben mit caption und label.

Falls ich etwas wichtiges vergessen habe, bitte nachfragen. Danke!



\documentclass[]{book}
\usepackage{tikz}
\usepackage{tikz-qtree}

\begin{document}

This is a little bit of text just to show where the figure should be centered. This is a little bit of text just to show where the figure should be centered. This is a little bit of text just to show where the figure should be centered. This is a little bit of text just to show where the figure should be centered. This is a little bit of text just to show where the figure should be centered.

\tiny
\begin{figure}[htbp]
\begin{center}
\begin{tikzpicture}[level distance=70pt, sibling distance=24pt]
\tikzset{every tree node/.style={text width=7em,text centered,draw,circle,minimum size=0.8cm}}
\Tree [.{\normalsize \textbf{$r$} \tiny \\black c3: (2/4)\\black c4: (2/3)\\black d4: (3/5)}
\edge node[auto=right]{black c3};
[. {\normalsize \textbf{$n_{1}$} \tiny \\white c4: (2/2)\\white d4: (0/1)}
\edge node[auto=left]{white c4}; {\normalsize \textbf{$n_{4}$} \tiny \\black d4: (0/1)} ]
\edge node[auto=left]{black c4};
{\normalsize \textbf{$n_{2}$} \tiny \\white c3: (0/1)\\white d4: (0/1)}
\edge node[auto=left]{black d4};
[. {\normalsize \textbf{$n_{3}$} \tiny \\white c3: (2/2)\\white c4: (0/2)}
\edge node[auto=left]{white c3}; {\normalsize \textbf{$n_{5}$} \tiny \\black c4: (0/1)}
\edge node[auto=left]{white c4}; {\normalsize \textbf{$n_{6}$} \tiny \\black c3: (1/1)} ]
]
\end{tikzpicture}
\caption{The move answer tree.}
\label{moveanswertreefigure}
\end{center}
\end{figure}
\normalsize

\end{document}

Stefan_K
25-08-2010, 01:38
Hallo,

es könnte helfen, einfach \tiny nach \begin{figure} zu setzen, \normalfont vor ihr Ende. Bedenke, Gleitumgebungen können woanders landen als sie im Code stehen.

Viele Grüße,

Stefan


--
TeXblog (http://texblog.net)

bliss
25-08-2010, 10:17
D'oh. Daran hatte ich überhaupt nicht gedacht, weil die figures immer noch genau dort im Dokument standen, wo sie vorher waren.
Danke!