У меня есть бумага в таком форматеВот этот, т. е. две колонки текста на странице.
Я пытался создать древовидную структуру, которая поместилась бы в один столбец, но пока мне это не удалось.
Есть ресурсы о том, как создавать древовидные структуры с помощью tikz,Вот этотнапример, илиэтот. Но пока мне не удалось адаптировать эти решения к моей нынешней ситуации.
Я вручную написал, как должно выглядеть дерево. Важно, чтобы первый узел мог распространяться на две линии, используя, я полагаю, //
или /newline
.
На данный момент у меня есть следующее:
\begin{figure}[t]
\centering
\caption{An illustration of a simple delete operation. \label{fig:simple}}
{
\begin{tikzpicture}[level/.style={sibling distance = 5cm/#1, level distance = 1.5cm}, scale=0.6,transform shape]
\node {\footnotesize educated at( Bush, University of Texas at Austin)}
child
{
%node [treenode] {$Y$ \\ 50}
child
{
%node [treenode] {$Z$ \\ 40}
child
{
node [treenode] {$S1$ \\ 30}
child
{
node {\\60}
}
{
node {\\60}
}
}
child
{
{
node {\\60}
}
{
node {\\60}
}
}
}
child[edge from parent path ={(\tikzparentnode.-50) -- (\tikzchildnode.north)}]
{
node [subtree,yshift=0.4cm] (a) {} % delay the text till later
}
}
child[edge from parent path ={(\tikzparentnode.-30) -- (\tikzchildnode.north)}]
{
node [subtree,yshift=0.4cm] (b) {} % delay the text till later
}
;
% ------------------------------------------------ put the text into subtree nodes
\node[align=center,yshift=0.1cm] at (a) {$Z$\\200};
\node[align=center,yshift=0.1cm] at (b) {$Z$\\200};
\end{tikzpicture}
}
\end{figure}
и эти пакеты:
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usetikzlibrary{shapes.geometric,arrows,fit,matrix,positioning}
Вот как это будет выглядеть в идеале:
решение1
Вот один из способов, с помощью forest
которого получаются особенно компактные деревья.
\documentclass[twocolumn]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{forest,kantlipsum}
\forestset{% adapted from page 52
nice empty nodes/.style={
delay={
where content={}{
shape=coordinate,
for parent={
for children={
anchor=north
}
}
}{}
}
}
}
\begin{document}
\kant[1-2]
\begin{figure}[t]
\centering
\caption{An illustration of a simple delete operation. \label{fig:simple}}
\begin{forest}
nice empty nodes,
for tree={
align=center,
parent anchor=south,
edge path={
\noexpand\path [draw, fill, \forestoption{edge}] (!u.parent anchor) circle (1.5pt) -- (.child anchor)\forestoption{edge label};
}
}
[\textsc{data representation}\\{\footnotesize educated at (Bush, University of Texas at Austin)}
[
[Something\\here
]
[Something\\else
]
]
[
[, tier=tier 1
[
[Q value]
[English]
]
[
[Q value]
[English]
]
]
[
[P value, tier=tier 1]
[English]
]
]
]
\end{forest}
\end{figure}
\kant[3-4]
\end{document}