Tengo un árbol ramificado que actualmente solo muestra nodos. Quiero etiquetarlo un poco más, pero no estoy seguro de cómo hacerlo. He incluido el código que tengo hasta ahora y también una imagen de cómo quiero que se vea. ¿Cómo debería hacer esto?
\begin{figure}[h]
\begin{center}
\begin{tikzpicture}
\tikzstyle{every node}=[circle,inner sep=1.5pt,draw,fill]
\draw node {} child {node {}
child {
node {}
child { node {} child { node {} }child {node {}} child {node {} }}
}
child { node {} }}
;
\end{tikzpicture}
\caption{ Branched tree}
\end{center}
\end{figure}
Respuesta1
\documentclass[border=2mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}%
[tn/.style={circle,inner sep=1.5pt,draw,fill}% tree node
]
\draw
node[tn] (1) {}
child { node[tn] (11) {}
child { node[tn] (111) {}
child { node[tn] (1111) {}
child { node[tn] (11111) {} }
child { node[tn] (11112) {} }
child { node[tn] (11113) {} }
}
}
child { node[tn] (112) {}}
};
\node[left =of 11111] (t4) {$t=4$};
\node at (1 -| t4) {$t=0$};
\node at (11 -| t4) {$t=1$};
\node at (111 -| t4) {$t=2$};
\node at (1111 -| t4) {$t=3$};
\node[right=of 11113] (R4) {$R_4=3$};
\node at (1 -| R4) {$R_0=1$};
\node at (11 -| R4) {$R_1=1$};
\node at (111 -| R4) {$R_2=2$};
\node at (1111 -| R4) {$R_3=1$};
\end{tikzpicture}
\end{document}
Respuesta2
En caso de que alguien deba dibujar muchos de estos, aquí hay un estilo Bosque, nodes alone
que formatea y etiqueta el árbol automáticamente. Obviamente, los detalles de lo que figura en las etiquetas se pueden personalizar según sea necesario. Supongo que los números en MWE representan el número de nivel ( t=0, t=1, ...
y R_0=??, R_1=??, ...
) y el número de nodos en ese nivel ( 1, 1, 2, 1, 3
). Modifique como desee.
He incluido un segundo ejemplo más amplio sólo para ilustrar el potencial: una vez definido el estilo, los árboles mismos se pueden especificar de manera muy concisa.
Por ejemplo, el árbol original se puede producir con
\begin{forest}
nodes alone
[, baseline
[
[
[
[][][]
]
]
[]
]
]
\end{forest}
y el árbol de demostración más grande con
\begin{forest}
nodes alone
[, baseline
[
[
[
[][][]
]
]
[[[[[[[[][[[[[]]][]]][[][]]][][][[]]]]][[[][]]]][[]]][[][[][]]]]
]
[
[[[]][][[[]]]]
]
]
\end{forest}
Código completo:
\documentclass[border=10pt]{standalone}
\usepackage{forest}
\forestset{
nodes alone/.style={
for tree={
parent anchor=center,
child anchor=center,
anchor=center,
inner sep=1.5pt,
circle,
fill,
s sep'+=10pt,
},
before typesetting nodes={
tempcounta/.max={>O{level}}{r,tree},
for nodewalk={
root,
tikz+={
\coordinate (w) at (current bounding box.west);
\coordinate (e) at (current bounding box.east);
},
until={>OR={level}{tempcounta}}{next node},
Nodewalk={}{current and ancestors}{
tempcountc/.option=level,
tempcountd'=0,
Nodewalk={}{filter={fake=root,tree}{>OR={level}{tempcountc}}}{tempcountd'+=1},
tikz+/.process={
ORw2{level}{tempcountd}{
\node [anchor=east, xshift=-10mm] at (w |- .center) {$t=##1$};
\node [anchor=west, xshift=10mm] at (e |- .center) {$R_{##1}=##2$};
}
},
}
}{},
},
},
}
\begin{document}
\begin{forest}
nodes alone
[, baseline
[
[
[
[][][]
]
]
[]
]
]
\end{forest}
\begin{forest}
nodes alone
[, baseline
[
[
[
[][][]
]
]
[[[[[[[[][[[[[]]][]]][[][]]][][][[]]]]][[[][]]]][[]]][[][[][]]]]
]
[
[[[]][][[[]]]]
]
]
\end{forest}
\end{document}