我画了一个固定位置的矩形:
\[\begin{tikzpicture}
\draw[thick] (3,1) rectangle (5,3);
\end{tikzpicture}\]
我想给它一个node
名称(例如rec
),以便以后可以根据它定位其他元素,例如:
\node (elli) [ellipse, below=1cm of rec] {...};
有人知道如何制作节点上方的矩形吗?
答案1
您可以为节点指定minimum height
和minimum width
。结合使用draw
,您将得到具有指定尺寸的矩形:
\node (rect) at (4,2) [draw,thick,minimum width=2cm,minimum height=2cm] {};
答案2
另一个使用fit
库的解决方案。以下示例显示如何使用两个对角坐标来定义一个矩形节点。
\documentclass[tikz,border=5]{standalone}
\usetikzlibrary{fit}
\begin{document}
\begin{tikzpicture}
\draw[help lines] (0,0) grid (6,4);
\fill[red] (3,1) circle (1pt) node[below left] {(3,1)} (5,3) circle (1pt) node[above right] {(5,3)};
\node[fit={(3,1) (5,3)}, inner sep=0pt, draw=blue, thick] (rect) {};
\draw[red] (rect.east) to[out=0,in=-90] (rect.south);
\end{tikzpicture}
\end{document}
答案3
你可以定义一个节点,并将矩形放入其中。然后,你可以添加更多对象作为具有相对位置的节点。
\documentclass[tikz, border=5]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\node(cuadrado){
\tikz {\draw[thick] (3,1) rectangle ++(2,2);}
};
% Text inside the rectangle
\node[at={($(cuadrado.center)$)},anchor=center] (texto) {asd asd asd};
\end{tikzpicture}
\end{document}