我有以下代码使用该 tikz-qtree
包构建树,但树太宽也太长。我该如何修复它,使其整体减小并且紧凑?另外,我是tikz-qtree
第一次使用,所以如果这是一个微不足道的问题,请原谅。
\documentclass[11pt,a4paper]{article}
\usepackage{times}
\usepackage{latexsym}
\usepackage{enumitem}
\usepackage{url}
\usepackage{tikz-qtree,tikz-qtree-compat}
\begin{document}
\begin{tikzpicture}
\Tree
[.S
[.NP [.PRP \\It ] ]
[ .VP
[.VP [ .VBZ\\ does ] [.RB \\not ]
[.VP [ .VB\\ seem ]
[.S
[.VP [.TO\\ to ]
[.VP [.VB\\ work ]
[.ADVP [.RB\\ consistently ]
]
]
]
]
]
]
[.CC\\ and ]
[.VP [.VBZ\\ stops ]
[.S
[.VP [.VBG\\ working ]
[.PP [.IN\\ for ]
[.NP [.DT\\ no ] [.NN\\ reason
]
]
]
]
]
]
]
]
\end{tikzpicture}
\end{document}
答案1
按照建议艾伦·芒恩在他上面的评论中,利用森林你可以获得更紧凑的图形:
(红线显示文字边框)。
对于使用来说,forest
代码的改变很小:
\documentclass{article}
\usepackage[linguistics]{forest}
%-------------------------------- show page layout, only for test
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\begin{document}
\centering
\begin{forest}
%
[S
[NP [PRP \\It ] ]
[VP
[VP [VBZ\\ does ] [RB \\not,calign with current ]
[VP [VB\\ seem ]
[S
[VP [TO\\ to ]
[VP [VB\\ work ]
[ADVP [RB\\ consistently ]
]
]
]
]
]
]
[CC\\ and,calign with current ]
[VP [VBZ\\ stops ]
[S
[VP [VBG\\ working ]
[PP [IN\\ for ]
[NP [DT\\ no ] [NN\\ reason
]
]
]
]
]
]
]
]
\end{forest}
\end{document}
编辑(1):考虑到原始答案的改进艾伦·芒恩 评论:使用linguistic
森林选项也会使其变得for tree
多余。
编辑(2):答案进一步得到改善成本加运费评论。随着calign with current
RB 和 CC 节点的增加,树变得更加整洁。使用 可以获得相同的改进calign with current edge
。