是否可以使用 2 个不同 tikzpictures 中的 2 个节点作为参考点来定义支架(使用蛇库)?
\begin{tikzpicture}[scale=.6]
\draw[draw=black, fill=black!20!white] (0,0) grid (4,3) rectangle (0,0);
\draw[fill=green](1.5,0.5) circle [radius=.3];
\draw[fill=blue] (0.5, 1.5) circle [radius=.3];
\draw[fill=purple](1.5, 2.5) circle [radius=.3];
\node (Bone) at (4,3) {};
\end{tikzpicture}
\begin{tikzpicture}[scale=.6]
\draw[draw=black, fill=black!20!white] (0,0) grid (4,3) rectangle (0,0);
\draw[fill=blue](1.5,0.5) circle [radius=.3];
\draw[fill=green] (0.5, 1.5) circle [radius=.3];
\draw[fill=purple](1.5, 2.5) circle [radius=.3];
\node (Btwo) at (4,0) {};
\end{tikzpicture}
我想制作一个从“Bone”开始到“Btwo”结束的括号。
评论:我对 TikZ 还很陌生,所以即使我在这里尝试做的事情(在我的 MWE 中)也可能有更简单的方法来实现。任何建议都很好 :)
答案1
在两个图形上使用该remember picture
选项,然后插入第三个图形并使用overlay
选项将它们连接起来。
注意使用decorations.pathreplacing
库和更改节点的锚点来调整支架的位置。您还可以使用选项控制支架的距离raise=5pt
。
\documentclass{report}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing}
\begin{document}
\begin{tikzpicture}[scale=.6,remember picture]
\draw[draw=black, fill=black!20!white] (0,0) grid (4,3) rectangle (0,0);
\draw[fill=green](1.5,0.5) circle [radius=.3];
\draw[fill=blue] (0.5, 1.5) circle [radius=.3];
\draw[fill=purple](1.5, 2.5) circle [radius=.3];
\node (Bone) at (4,3) {};
\end{tikzpicture}
\begin{tikzpicture}[scale=.6,remember picture]
\draw[draw=black, fill=black!20!white] (0,0) grid (4,3) rectangle (0,0);
\draw[fill=blue](1.5,0.5) circle [radius=.3];
\draw[fill=green] (0.5, 1.5) circle [radius=.3];
\draw[fill=purple](1.5, 2.5) circle [radius=.3];
\node (Btwo) at (4,0) {};
\end{tikzpicture}
\begin{tikzpicture}[remember picture,overlay,decoration={brace,raise=5pt}]
\draw[decorate] (Bone.east) -- (Btwo.east);
\end{tikzpicture}
\end{document}
用于\draw[decorate] (Bone.center) -- (Btwo.center);
连接节点的中心。