Alterar o tamanho do nó de uma árvore

Alterar o tamanho do nó de uma árvore

Eu tenho esta árvore:

insira a descrição da imagem aqui

Isso foi criado com este código:

\begin{figure}[h]
        \centering
        \begin{tikzpicture}
            \node[circle,draw]{}
            child{
                node[circle,draw]{a}
            }
            child[missing]{};
        \end{tikzpicture}
    \end{figure}

Como faço para aumentar o tamanho do círculo raiz para que, mesmo quando vazio, pareça com o círculo inferior? Ou existe uma maneira melhor de criar essas árvores?

Responder1

Com o uso do forestpacote:

\documentclass[margin=3mm]{standalone}
\usepackage{forest}

\begin{document}
    \begin{forest}
for tree = {circle,
            draw,
            minimum size=1.1em,
            inner sep=2pt,
            font=\small,
    l sep=9mm,
    s sep=6mm
            }
[
    [a]
    [, coordinate, no edge]
]   
    \end{forest}
\end{document}

insira a descrição da imagem aqui

Responder2

Você pode simplesmente definir o tamanho dos nós da árvore para ter um mínimo. Como é provável que a maioria dos seus nós também sejam desenhados como círculos, e você pode ter mais de uma árvore parecida com esta, faz sentido criar um estilo global para reutilização, incluindo todos esses parâmetros.

Se você estiver desenhando muitas árvores, recomendo fortemente mudar para forest. As ferramentas básicas de desenho de árvore TikZ não são realmente muito utilizáveis: sua sintaxe é muito desajeitada e elas não fazem empacotamento automático de nós.

\documentclass[a4paper,12pt]{article}
\usepackage{tikz}
\tikzset{my tree/.style={every node/.style={draw,circle,minimum size=1.5em}}}\begin{document}
        \begin{tikzpicture}[my tree]
            \node{}
            child{
                node{a}
            }
            child[missing]{};
        \end{tikzpicture}
\end{document}

insira a descrição da imagem aqui

Responder3

Bem-vindo à comunidade TeX.SE. Usarei, como solução rápida um hack, colocando em \node[circle,draw]{...}um personagem fantasma: \phantom{\small a}.

insira a descrição da imagem aqui

\documentclass[a4paper,12pt]{article}
\usepackage{tikz}
\usepackage{graphicx}

\begin{document}
\begin{figure}[h]
        \centering
        \begin{tikzpicture}
            \node[circle,draw]{\phantom{\small a}}
            child{
                node[circle,draw]{a}
            }
            child[missing]{};
        \end{tikzpicture}
    \end{figure}
\end{document}

informação relacionada