트리의 노드 크기 변경

트리의 노드 크기 변경

나는이 나무를 가지고 있습니다 :

여기에 이미지 설명을 입력하세요

이는 다음 코드로 생성되었습니다.

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

비어 있을 때에도 아래쪽 원처럼 보이도록 루트 원의 크기를 늘리려면 어떻게 해야 합니까? 아니면 이러한 트리를 만드는 더 좋은 방법이 있습니까?

답변1

패키지 사용 시 forest:

\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}

여기에 이미지 설명을 입력하세요

답변2

최소값을 갖도록 트리 노드의 크기를 간단히 정의할 수 있습니다. 대부분의 노드도 원으로 그려질 가능성이 높고 이와 같은 트리가 두 개 이상 있을 수 있으므로 해당 매개변수를 모두 포함하여 재사용할 전역 스타일을 만드는 것이 합리적입니다.

나무를 많이 그리는 경우 로 전환하는 것이 좋습니다 forest. 기본 TikZ 트리 그리기 도구는 실제로 그다지 유용하지 않습니다. 구문이 매우 투박하고 자동 노드 패킹을 수행하지 않습니다.

\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}

여기에 이미지 설명을 입력하세요

답변3

TeX.SE 커뮤니티에 오신 것을 환영합니다. 나는 빠른 해결책으로 해킹을 사용하여 \node[circle,draw]{...}유령 캐릭터를 추가할 것입니다: \phantom{\small a}.

여기에 이미지 설명을 입력하세요

\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}

관련 정보