"위"를 사용하여 노드 위치 지정

"위"를 사용하여 노드 위치 지정

를 사용하여 주어진 좌표 위의 노드 높이 사양에서 단위를 선언할 필요가 없습니다 above. 17장, 섹션 5.3의 다음 예에 있는 설명은 단위에 대한 언급 없이 숫자 0.2가 TikZ0.2센티미터(또는 2밀리미터)로 렌더링된다는 것을 나타냅니다.

\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}

[x=2cm,y=2cm]다음 코드는 그래프를 확대하는 점 을 제외하면 매뉴얼의 코드와 유사합니다 . 첫 번째 노드는 다음을 사용하여 배치 above=0.25되고 노드의 아래쪽 가장자리는 좌표보다 0.5cm 위에 배치됩니다. 두 번째 노드는 를 사용하여 위치를 지정 above=0.25cm하고 노드의 아래쪽 가장자리는 좌표보다 0.25cm 위에 배치됩니다. 이 구별은 매뉴얼의 어디에서 논의됩니까?

\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}

답변1

차이점은 \begin{tikzpicture}[x=2cm,y=2cm]명시적인 치수가 없을 때 TikZ가 2cm 증분을 사용하도록 지시하는 에 기인합니다. 귀하의 예에서 는 above=0.25와 같은 의미입니다 yshift=0.25*2cm,anchor=south. 이는 positioning라이브러리를 로드하는 경우에만 발생합니다. 다음 예는 명확하게 하는 데 도움이 될 수 있습니다.

    \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}

여기에 이미지 설명을 입력하세요

관련 정보