tikz 的 level distance 可不可以更改一下计算方式:
就像上面这幅图那样, 第二次计算 这个 40pt 是按照蓝色这个长度计算的 ? MWE 如下:
\documentclass{article}
\usepackage{tikz}
\usepackage{tikz-qtree}
\begin{document}
\begin{tikzpicture}[
grow=right,
level distance=40pt,
sibling distance=10pt,
every tree node/.style={anchor=west, inner sep=0pt, outer sep=0pt, draw},
every level 0 node/.style={anchor=east, inner sep=0pt, outer sep=0pt},
edge from parent/.style={
draw,
edge from parent path={
(\tikzparentnode.east) %-- +(8pt, 0pt)
|- (\tikzchildnode.west)
}
},
]
\Tree
[.Root Node
[.AAA-1 ]
[.AAA-2 ]
[.AAA-BBB-X ]
[.AAA-3
[.BBB-3 ]
[.BBB-4 ]
]
]
\end{tikzpicture}
\end{document}
没研究过tikz-qtree
这个包,只测试了下原生的写法。或许有更好的实践。晚点再测试下。
\documentclass[tikz,border=2pt]{standalone}
% \usepackage{tikz-qtree}
\begin{document}
\begin{tikzpicture}[grow=right,
growth parent anchor=east,
every node/.style={draw,
inner sep=0pt,
outer sep=0pt},
level 1/.style={anchor=west,
level distance=2cm,
sibling distance=2cm},
level 2/.style={anchor=west,
level distance=2cm,
sibling distance=1cm},
edge from parent path={(\tikzparentnode.east) |-
(\tikzchildnode.west)}
]
\node [anchor=east] {Root}
child {node {A}
child {node {a1}}
child {node {a2}}}
child {node {BBBB}
child {node {b1}}
child {node {b2}}};
\draw [step=1cm,help lines] (0,-2) grid (6,2);
\end{tikzpicture}
\end{document}