如何在 TikZ 中指定一个节点相对于另一个节点的位置

如何在 TikZ 中指定一个节点相对于另一个节点的位置

我已经定义了一个节点l1

\node (l1) [ellipse, draw=black, fill=white!20, text=black, scale=0.8]{$l_1$};

我想定义另一个节点l2并根据 定位它l1。我知道below left=...cm of l1存在,但如果我想将其放置l2在 下方 2cm 处和 左侧 3cm 处,该怎么办l1

答案1

您可以指定below left=<vertical distance> and <horizontal distance>。这将指定节点边界之间的距离。如果您想指定节点中心之间的距离,您可以on grid在 之前设置below left=...

定位选项在第 185 页中描述手册

\documentclass[a4paper]{article}

\usepackage{tikz}
\usetikzlibrary{shapes.geometric,positioning}

\begin{document}

\begin{tikzpicture}[
    every node/.style={
        draw,
        ultra thick,
        outer sep=0pt % prevents the thick line from influencing the dimensions of the nodes
    }
]
  \draw [gray!50] (-3,-2) grid (1,3); % to demonstrate placement
  \node (A) [ minimum width=2cm,minimum height=2cm] {A};
  \node [on grid, below left=1cm and 2 cm of A] (B) {B};
  \node [above left=1cm and 1cm of A] {C};
\end{tikzpicture}

\end{document}

相关内容