forest パッケージを使用してツリーを生成するための次のコードがあります。
\documentclass{standalone}
\usepackage{forest}
\begin{document}
\begin{forest}
for tree={circle,draw}
[A
[B
[C
[E]
[F]]
[D]]
[G
[H]
[I
[J]
[K
[L]
[M]]]]]
\end{forest}
\end{document}
結果として得られるツリーの描画は次のようになります。
各ノードを囲む円のサイズがわずかに異なることに気付くかもしれません。これは、隣接するノード H と I、および L と M の場合に最も顕著です。
これは、各ノードの文字が同じ量のパディングで囲まれることを保証するため、望ましい動作であると主張することもできます。ただし、これは見栄えが悪いと考えており、すべての円の半径を同じにしたいと考えています。
円のサイズを制御するためにさまざまなオプションを試しましたが、うまくいきませんでした。すべての円を同じサイズにするにはどうすればよいでしょうか。また、現在の円は大きすぎると思うので、円の内側の余白を減らしたいと思います。これをオプションで設定して、さまざまな値を試して、最も見栄えの良いものを確認できればと思います。
答え1
forest
は に基づいているため、のフォレスト ノード スタイル定義で、形状の定義を 、、などとしてtikz
使用できます。tikz
minimum size
text width
font
for tree={...}
\documentclass[margin=5mm]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[edges]{forest}
\begin{document}
\begin{forest}
for tree={circle, draw,
minimum size=1.5em, % <-- added
inner sep=1pt} % <-- added
[A
[B
[C
[E]
[F]]
[D]]
[G
[H]
[I
[J]
[K
[L]
[M]]]]]
\end{forest}
\end{document}