
두 tikzpicture
번째에는 overlay
. 그러나 해당 옵션을 사용하면 에서 A
까지 그려지는 선이 에도 불구하고 을 C
통과합니다 . 선이 B 아래에 나타나게 하려면 어떻게 해야 합니까? (B를 다시 그리는 것과 별개로, 임의의 xshift 및 yshift가 있기 때문에 실용적이지 않습니다.)B
\begin{pgfonlayer}{back}…\end{pgfonlayer}
\documentclass{article}
\usepackage{tikz}
\pgfdeclarelayer{back}
\pgfsetlayers{back,main}
\begin{document}
\begin{tikzpicture}[remember picture]
\node[draw=red!50, fill=red!10] (A) at (0,0) {A};
\node[draw=green!50,fill=green!10] (B) at (1,0) {B};
\node[draw=blue!50, fill=blue!10] (C) at (2,0) {C};
\end{tikzpicture}
\begin{tikzpicture}[remember picture, overlay]
\begin{pgfonlayer}{back}
\draw (A) -- (C);
\end{pgfonlayer}
\end{tikzpicture}
\end{document}
remember picture
및 사용을 정당화하는 보다 완전한 예는 다음과 overlay
같습니다.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix,chains,trees}
\pgfdeclarelayer{back}
\pgfsetlayers{back,main}
\begin{document}
\begin{figure}[h]
\centering
\begin{tikzpicture}[remember picture]
\matrix[matrix of nodes, every node/.style={anchor=center}] {
\begin{tikzpicture}[start chain=going below, every node/.style={on chain}]
\node[draw=red!50, fill=red!10] (A1) {A};
\node[draw=red!50, fill=red!10] (A2) {AA};
\node[draw=red!50, fill=red!10] (A3) {AAA};
\end{tikzpicture} &
\begin{tikzpicture}[grow cyclic, sibling angle=360/7, edge from parent/.style={draw=none}]
\node {} child foreach \i in {1,...,7} {
node[draw=green!50,fill=green!10] {B\i};
};
\end{tikzpicture} &
\begin{tikzpicture}[start chain=going below, every node/.style={on chain}]
\node[draw=blue!50, fill=blue!10] (C1) {C};
\node[draw=blue!50, fill=blue!10] (C2) {C};
\end{tikzpicture} \\
Label A & Label B & Label C\\
};
\end{tikzpicture}
\caption{Foo}
\end{figure}
\begin{tikzpicture}[remember picture, overlay]
\begin{pgfonlayer}{back}
\draw[thick] (A1) -- (C2);
\end{pgfonlayer}
\end{tikzpicture}
\end{document}
답변1
레이어는 각 그림에 대해 로컬입니다. 즉, onlayer 문은 효과가 없습니다. 내부의 레이어를 분리해야 합니다.하나의그림.