如何绘制带有边的层次结构?

如何绘制带有边的层次结构?

我想在我的 LaTeX 文档中显示这样的结构。该怎么做?

在此处输入图片描述

答案1

dirtree包是为生成此类图表而构建的。下面我给出了它的默认样式,然后展示如何调整参数以使其更接近手绘图。

示例输出

\documentclass{article}

\usepackage{dirtree}

\begin{document}

\dirtree{%
.1 HTML.
.2 Head.
.3 Title.
.3 Meta.
.2 Body.
.3 SVG.
.4 Image.
}

\renewcommand{\DTstyle}{\textrm\expandafter\raisebox{-0.7ex}}
\DTsetlength{1em}{1em}{0.2em}{0.4pt}{0.4pt}
\setlength{\DTbaselineskip}{2\baselineskip}

\dirtree{%
.1 HTML.
.2 Head.
.3 Title.
.3 Meta.
.2 Body.
.3 SVG.
.4 Image.
}

\end{document}

第二个示例中所做的参数更改如下:

  1. 节点的样式发生了变化,以便(a)我们使用标准文本字体,并且(b)节点相对于水平线向下移动

  2. 的标准长度dirtree进行了调整,以便(a)十字处的点0.4pt与线的宽度相同,这是最后两个参数,(b)垂直线在节点下进一步移动,这是第一个参数1em。第二和第三个参数有其标准值

  3. 的内部基线跳过dirtree变得更大,将线条分开并将垂直线的顶部向下移动,因此它们不会覆盖移位的文本。

相关内容