\begin{tikzpicture}
\graph [
tree layout,
grow'=right,
level distance=2.5cm,
sibling distance=1mm,
sibling sep=2pt,
nodes={red,inner sep=5pt,minimum size=5mm}
]
{[number nodes, number nodes sep=*]
开始-> {
A-> {A->Ac/"(A,A)",
B,C,D},
B -> {A,B,C,D},
C -> {A,B,C,D},
D-> {A,B,C,D},
小王[>{draw=none}]--小李[>{draw=none}]->那啥,
},
};
\node [above]at(A*2 |- A*3.north){小红};
\node [above](小明)at(A*3.north){小明};
\node [above](结果)at(Ac*4 |- A*3.north){结果};
\draw [->](小明)--(结果);
\end{tikzpicture}
——————————————————————————————————————
补充,参考选项 /tikz/graph/parse
\def\mystateA{}
\foreach \i[count=\ci,remember=\i as \li] in {A,B,C,D}
{
\ifnum\ci=1\relax
\else
\xdef\mystateA{\mystateA\li->{\mystateB},}
\fi
\xdef\mystateB{}
\foreach \j[count=\cj] in {A,B,C,D}
{
\xdef\mystateB{\mystateB\j->\i\j/"(\i,\j)",}
\ifnum\ci=4\relax
\ifnum\cj=4\relax
\xdef\mystateA{\mystateA\i->{\mystateB},}
\fi
\fi
}
}
\begin{tikzpicture}
\graph [
tree layout,
grow'=right,
level distance=2.5cm,
sibling distance=1mm,
sibling sep=2pt,
nodes={red,inner sep=5pt,minimum size=5mm}
]
{
[number nodes, number nodes sep=*]
开始-> {
[parse/.expanded=\mystateA]
},
};
\node (结果)[above] at(AA*4.north){结果};
\node (小明)[above] at(A*3.north |- AA*4.north){小明};
\node (小红)[above] at(A*2.north |- AA*4.north){小红};
\end{tikzpicture}




问 初中树状图tree中如何将各种组合结果以(A,B)形式简洁实现?