如何在矩形路径上方添加节点?
\path[draw] (upperleft) rectangle (lowerright) node[???] {Top};
我知道midway
我可以使用这个参数,但是这会将我的顶部标签定位在矩形的中间,而不是顶部
答案1
一种可能性(尽管不太符合 TikZ 的惯用做法)是将您的\path
命令与 Torbjørn 的建议组合成一个宏:
\documentclass{article}
\usepackage{tikz}
\newcommand\namedrectangle[3][]{%
\path[draw] (#2) rectangle (#3);
\path (#3 |- #2) -- (#2) node[midway,above] {#1};
}
\begin{document}
\begin{tikzpicture}
\coordinate (upperleft) at (0,1);
\coordinate (lowerright) at (2,0);
\namedrectangle[Named rectangle]{upperleft}{lowerright}
\end{tikzpicture}
\end{document}
答案2
另一种选择。如果您知道corners coordinates
使用fit
库来绘制矩形,同时添加文本label
。您可以使用named
坐标或数字。在最后一种情况下,请在括号内包含坐标列表。
\documentclass[tikz,border=2mm]{standalone}
\usetikzlibrary{fit}
\begin{document}
\begin{tikzpicture}
\fill[red] (0,1) circle[radius=1pt] coordinate (upperleft);
\fill[red] (2,0) circle[radius=1pt] coordinate (lowerright);
\node[draw, fit=(upperleft) (lowerright), inner sep=0pt, label={Named rectangle}] (rectangle) {};
\node[draw, fit={(3,0) (5,1.4)}, inner sep=0pt, label={[text width=2cm, align=center]Another named rectangle}
] (rectangle-b) {};
\end{tikzpicture}
\end{document}