有命令:左、右和上。我可以通过它们获得节点上方的三个节点,但如果不创建空节点,我就无法想出其他方法。那么如何在 Tikz 中获得节点上方的四个节点呢?
例如,考虑一个有五个节点的图,其中四个节点位于一个节点上方:如何做到这一点?还有位置命令吗?
\begin{tikzpicture}
\node (A) {};
\node [above right=of A] (B) {};
\node [above left=of A] (C) {};
\node [above =of A] (D) {};
%How to have a fourth node above A that is not on top of B,C or D?
\end{tikzpicture}
答案1
一种可能性是使用极坐标将节点放置在任意位置:
\documentclass[tikz,border=1pt]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
\node (A) {A};
%How to have a fourth node above A that is not on top of B,C or D?
\node at (A) [shift=(36 :1cm)] (B) {B};
\node at (A) [shift=(72 :1cm)] (C) {C};
\node at (A) [shift=(108:1cm)] (D) {D};
\node at (A) [shift=(144:1cm)] (E) {E};
\end{tikzpicture}
\end{document}
另一种可能性是使用above
不同的xshift
:
\begin{tikzpicture}
\node (A) {A};
\node [above=of A, xshift= 1.5cm] (B) {B};
\node [above=of A, xshift= .5cm] (C) {C};
\node [above=of A, xshift= -.5cm] (D) {D};
\node [above=of A, xshift=-1.5cm] (E) {E};
\end{tikzpicture}