如何比左侧、右侧更精确地定位节点?
\node[above =3 cm of node1,node distance=3.5cm] (node2){};
例如,您如何说我想要位于某个节点左侧 3 毫米和上方 4 毫米处(或者交替位于某个角度和距离)?
答案1
使用定位库,您可以获得这里演示的相当灵活的语法:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
\node (A){A};
\node [above left = 3mm and 4mm of A] (B){B};
\end{tikzpicture}
\end{document}
为了将节点定位在另一个节点的距离和角度处:TikZ 可以处理极坐标,所以这也应该很简单,但我对如何以最佳方式精确地做到这一点感到困惑......
答案2
那么像这样,使用 xshift 和 yshift,以及使用相对距离的位置,将节点精确地放置在起始节点的位置:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
\node[rectangle, draw=black] (node1) {N1};
\node[rectangle, draw=black,xshift=2cm, yshift=2cm, at=(node1)] (node2) {N2};
\node[below right=1cm and 1cm of node1, rectangle, draw=black] (node3) {N3};
\end{tikzpicture}
\end{document}