关于 tikz 树的一些问题

关于 tikz 树的一些问题

我有一棵用 tikz 编写的工作树,但它并不完全是我想要的样子 在此处输入图片描述

\begin{tikzpicture}[level/.style={sibling distance=60mm/#1}]
\node [circle,draw] (equal){$=$}
  child {node [circle,draw] (m1) {$meters$}
    child {node [circle,draw] (x1) {$X_1$ \\ meters/hour}}
    child {node [circle,draw] (x2) {$X_2$ \\ {\it hour}}}
    }
  child {node [circle,draw] (m2) {$meters$}
    child {node [circle,draw] (y1) {$Y_1$ \\ {\it meters/lap}}}
    child {node [circle,draw] (y2) {$Y_2$ \\ {\it lap}}}
};    

\end{tikzpicture}

我的问题首先是如何将文本分成两行(\\由于某种原因不起作用),还有如何将每个圆的大小固定为相同(意味着在必要时缩小某些节点的文本)

答案1

使用保罗的评论和这个问题在节点大小上,您可以设置每个节点的最小大小(因此,您必须使用该选项分别调整每个节点的字体大小,以确保它适合内部font=)。代码如下:

\begin{tikzpicture}[level/.style={sibling distance=60mm/#1},
                    every node/.style={align=center,inner sep=0pt,minimum size=1.5cm}]
\node [circle,draw] (equal){$=$}
  child {node [circle,draw] (m1) {$meters$}
    child {node [circle,draw,font=\tiny] (x1) { $X_1$ \\ meters/hour}}
    child {node [circle,draw] (x2) {$X_2$ \\ {\it hour}}}
    }
  child {node [circle,draw] (m2) {$meters$}
    child {node [circle,draw,font=\footnotesize] (y1) {$Y_1$ \\ {\it meters/lap}}}
    child {node [circle,draw] (y2) {$Y_2$ \\ {\it lap}}}
};    

\end{tikzpicture}

结果如下:

在此处输入图片描述

节点大小设置为1.5cm,您可以更改,我只调整了一些节点字体大小。

个人观点 - 我认为像“米/小时”这样的长文本最好分成两行或缩写,而不是试图缩小字体。图形中的统一文本大小看起来更好。

相关内容