Quero mudar o estilo de algumas bordas da minha árvore. Quero um caminho vermelho tracejado da raiz até uma folha da minha árvore. Mas se eu alterar algumas arestas específicas, todas as arestas abaixo também mudam. Até os rótulos estão ficando vermelhos o que eu não quero.
Então é isso que acontece:
Mas eu quero algo assim:
Alguma sugestão? Não pode ser tão difícil. Mas passo mais de uma hora tentando descobrir. Aqui está o meu código:
\documentclass[border=10pt,svgnames]{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning,automata,backgrounds}
\definecolor{light-gray}{gray}{0.6}
\begin{document}
\centering
\begin{tikzpicture}[level distance=1.5cm,
level 1/.style={sibling distance=3cm},
level 2/.style={sibling distance=1cm},
level 3/.style={sibling distance=1cm},
every node/.style={thin}]
\node {1}
child {node {00}
child {node {00}}
child {node {}}
child {node {10}}
child {node {}}
}
child {node {}}
child {node {10}
child {node {00} edge from parent[dashed, very thick, red]
child {node {00}}
child {node {01}}
child {node {10}}
child {node {11} edge from parent[dashed, very thick, red]}
}
child {node {}}
child {node {}}
child {node {11}}
}
child {node {}};
\end{tikzpicture}
\end{document}
Responder1
Você pode usarForest
pacote com uma sintaxe simples para personalizar todas as arestas da sua árvore, basta inserir opções de arestas como esta
edge={dashed,red,thick}
Código completo
\documentclass[border=10pt,svgnames]{standalone}
\usepackage{forest}
\begin{document}
\begin{forest}
for tree={delay={where content={}{content={\phantom{00}}}{}},s sep+=5mm,l+=5mm}
[1
[00
[00]
[]
[10]
[]
]
[]
[10,edge={dashed,red,thick}
[00,edge={dashed,red,thick}
[00]
[01]
[10]
[11,edge={dashed,red,thick}]
]
[]
[]
[11]
]
[\phantom{00}]
]
\end{forest}
\end{document}