当我浏览 TikZ 手册和可用示例时,子节点的位置是在父节点内定义的。这意味着所有子节点都以恒定的角度间隔从父节点以相同的半径分布。
如何为每个子节点单独定义level dsiatance
和?sibling angle
\node[ball color=red,circle] (parent) at (5,5) {Parent}
[level distance=4cm,sibling angle=30,clockwise from=0]
child {node[rectangle,fill=red,color=white]
{e.g. 2cm from parent at angle 0}}
child {node[rectangle,fill=red,color=white]
{e.g. 5cm from parent at angle 20}}
child {node[rectangle,fill=red,color=white]
{e.g. 3cm from parent at angle 60}};
而不是在中定义的与父节点的恒定距离和子节点之间的相等角度
[level distance=4cm,sibling angle=30,clockwise from=0]
如何为每个孩子定义一个自定义(独立的)值?
答案1
您可以将level distance
和sibling angle
选项传递给child
关键字:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{trees}
\begin{document}
\begin{tikzpicture}
\node[ball color=red,circle] (parent) at (5,5) {Parent}
[clockwise from=0]
child [level distance=2cm] {node[rectangle,fill=red]
{A}}
child [level distance=4cm, sibling angle=20] {node[rectangle,fill=red]
{B}}
child [level distance=3cm, sibling angle=30] {node[rectangle,fill=red]
{C}};
\end{tikzpicture}
\end{document}