我怎样才能在森林中绘画?

我怎样才能在森林中绘画?

我想像-> 123这片森林一样画画$\overset{\downarrow }{\mathop{123}}\,$,默认情况下这是我的代码

\documentclass[12pt]{standalone}
\usepackage{amsmath}
\usepackage{forest}
\begin{document}
\begin{forest}
[1[2[3[123]][4[124]][5[125]]]
[3[2[132]][4[134]][5[135]]]
[4[2[142]][3[143]][5[145]]]
[5[2[152]][3[153]][4[154]]]]
\end{forest}
\end{document}

在此处输入图片描述

例如,我怎样才能得到这样的结果?

在此处输入图片描述

答案1

您可以一次完成所有操作或按节点进行操作:

\documentclass[preview]{standalone}
\usepackage{amsmath}
\usepackage{forest}

\begin{document}
\begin{forest}
for tree={
if n children=0{edge={->}}{},
},
[1[2[3[123]][4[124]][5[125]]]
[3[2[132]][4[134]][5[135]]]
[4[2[142]][3[143]][5[145]]]
[5[2[152]][3[153]][4[154]]]]
\end{forest}

\begin{forest}
[1[2[3[123,edge={->}]][4[124,edge={->}]][5[125,edge={->}]]]
[3[2[132,edge={->}]][4[134,edge={->}]][5[135,edge={->}]]]
[4[2[142,edge={->}]][3[143,edge={->}]][5[145,edge={->}]]]
[5[2[152,edge={->}]][3[153,edge={->}]][4[154,edge={->}]]]]
\end{forest}
\end{document}

在此处输入图片描述

答案2

如果您希望forest确保终端节点的准确性,例如:

\documentclass[border=10pt]{standalone}
\usepackage{forest}

\begin{document}

\begin{forest}
  for tree={
  if n children=0{
    edge={->}}{},
  },
  delay={
    for tree={
      where n children=0{
        content/.wrap 3 pgfmath args={#1#2#3}{content("!uuu")}{content("!uu")}{(content("!u"))}
      }{},
      where level=1{
        content/.pgfmath={int(n()+1)}
      }{},
    },
  },
  [1[[3[]][4[]][5[]]]
    [[2[]][4[]][5[]]]
    [[2[]][3[]][5[]]]
    [[2[]][3[]][4[]]]
  ]
\end{forest}

计算终端节点

相关内容