
Ich stoße auf dieses ziemlich seltsame Problem, wenn ich TikZ mit LyX 2 verwende. Ich habe dieses Diagramm mit TikZ programmiert und es soll einem Textabschnitt folgen und oben auf der nächsten neuen Seite positioniert werden. Stattdessen wird es genau in der Mitte der neuen Seite positioniert, wobei zwischen dem Text und sich selbst ein Stück Platz bleibt. In meinem Dokument platziere ich den Tex-Code für die Abbildung mit einem Leerzeichen unmittelbar nach dem Text selbst und der TikZ-Code lautet wie folgt.
\usetikzlibrary{shapes}
\usetikzlibrary{fit}
\usetikzlibrary{calc}
\usetikzlibrary{arrows}
\begin{figure}[ht!]
\centering
\begin{tikzpicture} [label distance=2mm,
vertice/.style={circle, fill=gray!30, thick, inner sep=0pt, minimum size=7mm},
dot/.style={shape=circle, fill=black, minimum size=2pt, inner sep=0pt, outer sep=2pt}]
\node [vertice] (a) at (0,7) {$t_1$};
\node [vertice] (b) at (0,6) {$t_2$};
\node [vertice] (c) at (0,5) {$t_3$};
\node [dot] (d) at ($(c) + (270:1)$) {};
\node [dot] (e) at ($(d) + (270:0.5)$) {};
\node [dot] (f) at ($(e) + (270:0.5)$) {};
\node[draw, ellipse, label=below:$T$, fit=(a) (b) (c) (d) (e) (f)] {};\node [vertice] (h) at (5,7) {$a_1$};
\node [vertice] (i) at (5,6) {$a_2$};
\node [vertice] (j) at (5,5) {$a_3$};
\node [dot] (k) at ($(j) + (270:1)$) {};
\node [dot] (l) at ($(k) + (270:0.5)$) {};
\node [dot] (m) at ($(l) + (270:0.5)$) {};
\node[draw, ellipse, label=below:$A$, fit=(h) (i) (j) (k) (l) (m)] {};
\path (h) edge [-stealth, auto, swap] node {$w_1$} (a)
edge [-stealth, auto] node[below, sloped] {$w_2$} (e)
(i) edge [-stealth, auto, swap] node {$w_3$} (b)
(j) edge [-stealth, auto] node[below, sloped] {$w_4$} (a)
edge [-stealth, auto] node[above, sloped] {...} (f)
(k) edge [-stealth, auto] node[above, sloped] {...} (c)
(l) edge [-stealth, auto] node[below, sloped] {...} (d)
(m) edge [-stealth, auto] node {...} (f);
\end{tikzpicture}
\caption{A graph $G$}
\end{figure}
Irgendwelche Vorschläge, wie das Problem behoben werden kann?
Ich verwende die Springer LNCS-Dokumentenklasse, falls das einen Unterschied macht.
Antwort1
Befindet sich die Abbildung auf der allerletzten Seite und folgt kein Text, wird sie zentriert, wie im MWE unten dargestellt (wenn Sie die \setlength
Zeile auskommentieren).
GemäßVertikales Layout von Float-SeitenDie Werte, die die Abstände zwischen den Schwimmern steuern, sind:
\@fptop
definiert den Abstand vom oberen Rand der Seite bis zum oberen Rand des ersten Floats,
\@fpsep
definiert den Abstand zwischen den Floats und
\@fpbot
definiert den Abstand von der Unterseite des letzten Floats auf der Seite bis zur Unterseite der Seite.
und die Standardwerte sind:
\@fptop = 0pt + 1fil
\@fpsep = 8pt + 2fil
\@fpbot = 0pt + 1fil
Wenn Sie also \@fptop
etwas ohne das einstellen 1fill
, erzielen Sie das gewünschte Ergebnis.
\documentclass{article}
\usepackage[demo]{graphicx}% Remove [demo] option in real use
\usepackage[showframe]{geometry}
\usepackage{lipsum}
\makeatletter% Set distance from top of page to first float
\setlength{\@fptop}{5pt}
\makeatother
\begin{document}
\lipsum[1-5]
\begin{figure}[ht!]
\centering
\includegraphics{foo}
\caption{A graph $G$}
\end{figure}
\end{document}