Danke, camphene и .Serj. Эту задачу я решил так:
Код:
below=\len of node_1_1.south west, anchor=north west
Но возникла еще одна.
Я сделал программу, которая автоматически генерирует диаграмму, отражающую статус проекта в виде дерева. Но при длинном тексте в задачах по разделам проекта они залезают друг на друга.
Код:
\documentclass{article}
\usepackage[a4paper,landscape]{geometry}
\usepackage[cm]{fullpage}
\usepackage[russian]{babel}
\usepackage[utf8]{inputenc}
\usepackage{kpfonts}
\usepackage{berasans}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usetikzlibrary{arrows,positioning}
\begin{document}
\def\len{1}
\begin{tikzpicture}[node distance=\len*1.4 cm, auto]
\tikzset{
main_node/.style={ellipse, draw=black, top color=white, bottom color=yellow!50,thick, inner sep=1em, minimum size=3em, text centered, double},
subnode1/.style={rectangle,rounded corners,top color=white, bottom color=yellow!50,very thick, inner sep=1em, text centered},
common_node/.style={rectangle,rounded corners, draw, inner sep=1em},
myarrow/.style={draw},
}
\tikzstyle{every node}=[font=\large]
\colorlet{done}{blue}
\colorlet{need_testing}{red}
\node[main_node] (top) {Как оптимально распределить ветви по пространству листа?};
\node[subnode1, below=\len*2 cm of top, draw=black,align=left] (node_1_1) {Менять ширину колонки\\ в зависимости от максимальной\\ длины текста в ней.};
\node[left =\len / 3 of node_1_1] (dummy_1) {};
\node[common_node, below=\len of node_1_1.south west, anchor=north west, draw=black] (node_1_1_0) {Непонятно, как считать эту ширину.};
\draw[myarrow] (node_1_1.west) -- (dummy_1.east) |- (node_1_1_0.west);
\node[subnode1, left = of node_1_1, draw=black,align=left] (node_1_0) {Сделать колонки, задав им\\ фиксированную ширину\\ для каждой ветви};
\node[left =\len / 3 of node_1_0] (dummy_0) {};
\node[common_node, below=\len of node_1_0.south west, anchor=north west, draw=black, text width=5.3cm] (node_1_0_0) {пространство будет использовано нерационально};
\draw[myarrow] (node_1_0.west) -- (dummy_0.east) |- (node_1_0_0.west);
\draw[myarrow] (top.south) -- ++(0,-\len) -| (node_1_0.north);
\draw[myarrow] (top.south) -- ++(0,-\len) -- (node_1_1.north);
\end{tikzpicture}
\end{document}