如何在矩形路径上方添加节点?

如何在矩形路径上方添加节点?

如何在矩形路径上方添加节点?

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

在此处输入图片描述

相关内容