Positionierung eines Knotens mit „über“

Positionierung eines Knotens mit „über“

Bei der Angabe der Höhe eines Knotens über einer gegebenen Koordinate mit müssen keine Einheiten angegeben werden above. Der Kommentar im folgenden Beispiel in Kapitel 17, Abschnitt 5.3 besagt, dass die Zahl 0,2 ohne Nennung von Einheiten als TikZ0,2 Zentimeter (oder 2 Millimeter) wiedergegeben wird.

\begin{tikzpicture}
\draw[help lines] (0,0) grid (2,2);
\node at (1,1) [above=0.2, draw] {above};
% south border of the node is now 2mm above (1,1)
\end{tikzpicture}

Der folgende Code ähnelt dem Code aus dem Handbuch, mit Ausnahme von [x=2cm,y=2cm], das den Graphen vergrößert. Der erste Knoten wird mithilfe von positioniert above=0.25und die untere Kante des Knotens wird 0,5 Zentimeter über der Koordinate platziert; der zweite Knoten wird mithilfe von positioniert above=0.25cmund die untere Kante des Knotens wird 0,25 Zentimeter über der Koordinate platziert. Wo wird dieser Unterschied im Handbuch erläutert?

\documentclass[10pt]{amsart}
\usepackage{tikz}
\usetikzlibrary{calc,angles,shapes,positioning,intersections,quotes,decorations.markings}


\begin{document}

\begin{tikzpicture}[x=2cm,y=2cm]
\draw (0,0) grid [xstep=0.5, ystep=0.5] (2,2);
\node at (0.5,1) [above=0.25, draw] {over};
\node at (1.5,1) [above=0.25cm, draw] {over};
\end{tikzpicture}

\end{document}

Antwort1

Der Unterschied ist auf zurückzuführen \begin{tikzpicture}[x=2cm,y=2cm], das TikZ anweist, 2-cm-Schritte zu verwenden, wenn keine expliziten Abmessungen vorliegen. In Ihrem Beispiel above=0.25bedeutet dasselbe wie yshift=0.25*2cm,anchor=south. Beachten Sie, dass dies nur geschieht, wenn Sie die positioningBibliothek laden. Das folgende Beispiel kann zur Verdeutlichung beitragen.

    \documentclass[10pt]{amsart}
    \usepackage{tikz}
    \usetikzlibrary{positioning}

\documentclass[10pt]{amsart}
\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}
\begin{tikzpicture}[x=1cm,y=1cm]
\draw (0,0) grid [xstep=1, ystep=1] (4,4);
\node at (0.5,1) [blue,above=1, circle, draw] {over};
\node at (1.5,1) [red,yshift=1cm,anchor=south, circle, draw] {over};
\node at (2.5,1) [above=1cm, draw] {over};
\node at (3.5,1) [above=10mm, draw] {over};
\end{tikzpicture}
\quad
\begin{tikzpicture}[x=2cm,y=2cm]
\draw (0,0) grid [xstep=1, ystep=1] (4,4);
\node at (0.5,1) [blue,above=1, circle, draw] {over};
\node at (1.5,1) [red,yshift=1cm,anchor=south, circle, draw] {over};
\node at (2.5,1) [above=1cm, draw] {over};
\node at (3.5,1) [above=10mm, draw] {over};
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen