我想绘制一个由两个子图组成的图形。
如何使用边界框放置标签(例如(a)和(b))?
这是我目前的代码,但我没有取得任何进展。
\documentclass[tikz]{standalone}
\begin{document}
\centering
\begin{tikzpicture}
\begin{scope}
\draw(0,0) -- (0,2) -- (2,2)-- (2,0)-- cycle;
\node [anchor=north] at (current bounding box.south) {(a)};
\end{scope}
\begin{scope}[xshift = 3cm]
\draw(0,0) -- (0,2) -- (2,2)-- (2,0)-- cycle;
\node [anchor=north] at (current bounding box.south) {(b)};
\end{scope}
\end{tikzpicture}
\end{document}
我希望“(b)”位于右侧子图的中心。
欢迎任何帮助。谢谢。
答案1
我找到了!
对于每个范围,我必须定义一个局部边界框并使用这个特定框的锚点。
\documentclass[tikz]{standalone}
\begin{document}
\centering
\begin{tikzpicture}
\begin{scope}[draw, local bounding box=bounding box 0]
\draw(0,0) -- (0,2) -- (2,2)-- (2,0)-- cycle;
\node [anchor=north] at (bounding box 0.south) {(a)};
\end{scope}
\begin{scope}[draw, local bounding box=bounding box 1, xshift = 3cm]
\draw(0,0) -- (0,2) -- (2,2)-- (2,0)-- cycle;
\node [anchor=north] at (bounding box 1.south) {(b)};
\end{scope}
\end{tikzpicture}
\end{document}
解决了!