我正在尝试通过以下代码在 LaTeX 中绘制一棵树。它可以工作;但是,它总是向左对齐。我怎样才能使它与中心对齐?
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[]{forest}
\forestset{.style={for tree={parent anchor=south, child anchor=north,align=center,inner sep=2pt}}}
\begin{forest}
[TP
[DP [D\\the] [NP [N\\man ]]]
[T'
[T\\will ]
[VP
[V\\eat ]
[DP [D\\a ] [NP [N\\burger ]]]
]
]
]
\end{forest}
注:代码取自 Alan Munn(链接已弃用;新版本这里)
答案1
align=center
仅将文本置于节点的中心。它并不相forest
对于页面居中。
更根本的问题是,中的设置.style
不会应用于当前森林。要查看此问题,请尝试添加,blue
并注意您的树始终保持黑色。
相反, Current Forest 则提供了default preamble
。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[]{forest}
\forestset{default preamble={for tree={blue,parent anchor=children, child anchor=parent,align=center,inner sep=2pt}}}
\begin{document}
\begin{center}
\begin{forest}
[TP
[DP [D\\the] [NP [N\\man ]]]
[T'
[T\\will ]
[VP
[V\\eat ]
[DP [D\\a ] [NP [N\\burger ]]]
]
]
]
\end{forest}
\end{center}
\end{document}
blue
显然,您应该在实际文档中删除。
不过,你可能想使用
\usepackage[linguistics]{forest}
相反,它将应用一组很好的(对于语言学而言!)默认值到你的树,而无需你指定它们。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[linguistics]{forest}
% \forestset{default preamble={for tree={blue,parent anchor=children, child anchor=parent,align=center,inner sep=2pt}}}
\begin{document}
\begin{center}
\begin{forest}
[TP
[DP [D\\the] [NP [N\\man ]]]
[T'
[T\\will ]
[VP
[V\\eat ]
[DP [D\\a ] [NP [N\\burger ]]]
]
]
]
\end{forest}
\end{center}
\end{document}