我想制作一个垂直森林并对齐绿色盒子。来自这里我得到了一个很好的for tree=
但我实际上不明白这里发生了什么。
目前我有这个。
\documentclass{article}
\usepackage[left=5pt,right=5pt,top=10pt,bottom=10pt]{geometry}
\usepackage{forest}
\usepackage{caption}
\newcommand{\vs}{\vspace{2mm}}
\begin{document}
\begin{figure}
\centering
\resizebox{1\textwidth}{!}{%
\begin{forest}
for tree={
child anchor=west, % connection-point ->north
parent anchor=east, % connection-point ->south
grow'=east, text centered, %grow down -> south
text width=5cm,
draw, %draw the tree
anchor=west, % ?
edge path={ % actually dont understand here anything
\noexpand\path[\forestoption{edge}]
(.child anchor) -| +(-2pt,0) -- +(-8pt,0) |-
(!u.parent anchor)\forestoption{edge label};
}
}
[level0
[level1
[level2-1, bottom color=green!20
[level3-1]
[level3-2]
]
[level2-2, bottom color=green!20
[level3-3]
[level3-4]
]
]
[level2-3, bottom color=green!20
[loooooooong -level3-5]
[loooooooong -level3-6]
]
]
\end{forest}}
\captionof{figure}{myname}
\label{fig:stil_ml}
\end{figure}
\end{document}
通过代码命令的改变,我得到了这个。
但看上去不太漂亮。
我最终想要的是这个。
答案1
如果我正确理解了您编辑的问题,那么您正在寻找类似这样的内容:
编辑: 被认为是编辑过的答案:
编辑:
已修正锚点并添加tier/.option=level
。
\documentclass{article}
\usepackage[left=5pt,right=5pt,top=10pt,bottom=10pt]{geometry}
\usepackage[edges]{forest} % <--- added option edges
\usepackage{caption}
\begin{document}
\begin{figure}
\centering
\begin{forest}
for tree={
% nodes
text centered,
text width=24mm,
minimum height=9mm,
font=\footnotesize\linespread{0.9}\selectfont,
draw,
% tree
grow' = south, % <--- grow down -> south
anchor = north, % <--- new
forked edge, % <--- new
l sep = 6mm,
s sep = 2mm,
fork sep = 3mm, % <--- new
edge = {draw, semithick},% <--- changed
where level = {2}{top color=green!50!black, bottom color=green!20}
{},
tier/.option = level
}% end of tree
[level0
[level1
[level2-1,
[level3-1]
[level3-2]
]
[level2-2,
[level3-3]
[level3-4]
]
]
[,coordinate
[level2-3
[loooooooong -level3-5]
[loooooooong -level3-6]
]
]
]
\end{forest}
\caption{myname} % <--- changed
\label{fig:stil_ml}
\end{figure}
\end{document}
与您的相比,上述 MWE 中的变化以 标记% <--- ...
。由于树相当宽,我将节点形状的宽度减小到 24 毫米,并在必要时允许两行节点内容,选择最小高度,以便所有节点都具有相同的高度。也用于footnotesize
字体大小。