如何在林樹繪圖中設定圓半徑?

如何在林樹繪圖中設定圓半徑?

我有以下程式碼使用森林包產生一棵樹:

\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 sizetext width、等:fontfor 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}

在此輸入影像描述

相關內容