How to draw up a hierarchical tree diagram for taxonomic classification
You can do this sort of tree easily with the tikz-qtree
package:
In the code below, the labels are created using a tree with branches that are not actually drawn (using a style blank
which sets [draw=none]
). This ensures that they line up with the levels of the main tree. By putting two trees as nodes in a matrix we achieve a reasonable separation between the labels and the main tree.
\documentclass{article}
\usepackage{tikz-qtree}
\begin{document}
\tikzset{edge from parent/.style=
{draw, edge from parent path={(\tikzparentnode.south)
-- +(0,-8pt)
-| (\tikzchildnode)}},
blank/.style={draw=none}}
\begin{tikzpicture}
\matrix
{
\node{\Tree
[.Class \edge[blank];
[.Order \edge[blank];
[.Family \edge[blank];
[.Genus ]]]]};
&
\node{\Tree
[.{$\gamma$-proteobacteria}
[.Alteromonadales
[.Alteromonadaceae {Glaciecola} Alteromonas Agarivorans ] ]
[.Vibrionales [.Vibrionacae Vibrio ]]]};\\
};
\end{tikzpicture}
\end{document}
run with xelatex
\documentclass{article}
\usepackage{pst-tree}
\def\psedge{\ncangles[angleA=-90,angleB=90]}
\psset{levelsep=14mm,treesep=1.75cm,nodesep=3pt}
\begin{document}
\hspace*{1.3cm}
\pstree{\Tr[name=class]{$\gamma$-proteobacteria}}{%
\pstree{\Tr[name=order]{Alteromonadales}}{%
\pstree[thistreesep=3mm]{\Tr[name=family]{Alteromonadaceae}}{%
\Tr[name=genus]{Glaciecola}
\Tr{Alteromonas}
\Tr{Agarivorans}%
}}
\pstree{\Tr{Vibrionales}}{%
\pstree{\Tr{Vibrionacae}}{%
\Tr{Vibrio}
}}
}
\rput[rc](0,0|class){Class}\rput[rc](0,0|order){Order}%
\rput[rc](0,0|family){Family}\rput[rc](0,0|genus){Genus}%
\end{document}