2015-06-01 4 views
1

Я только начал использовать Latex для создания документа с большой математикой. Я хотел включить дерево вероятности и нашел библиотеку Tikz. Первый бит кода для моего дерева выглядит следующим образом:Введите разрыв строки в тексте узла в библиотеке Latex Tikz

%To create probability trees, use tikz package 
\usepackage{tikz} 
\usetikzlibrary{trees} 

% Insert a probability tree showing first level only 
% ------------------------------------------------------------- 
% Set the overall layout of the tree 
\tikzstyle{level 1}=[level distance=3.5cm, sibling distance=4.0cm] 
\tikzstyle{level 2}=[level distance=3.5cm, sibling distance=2cm] 

% Define styles for bags and leafs 
\tikzstyle{bag} = [text centered] 

% Draw probability tree 
\begin{tikzpicture}[grow=right, sloped] 
\node[bag] {} 
    child { 
     node[bag] {Not diseased $\left(D^- \right)$} 
      edge from parent 
      node[below] {$0.90$} 
    } 
    child { 
     node[bag] {Diseased $\left(D^+ \right)$}   
      edge from parent   
      node[above] {Prevalence} 
      node[below] {$0.10$} 
    }; 
\end{tikzpicture} \\ 

Полученное дерево выглядит как это:

   Diseased (D+) 
     /
    Prev/
    /0.10 
    /
    \ 
     \ 
    0.90 \ 
      \ 
      Not diseased (D-) 

... если вы получаете мой дрейф.

Я хотел бы иметь возможность ввести разрыв строки в тексте узла, чтобы под ним отображались (D +) и (D-). Я пробовал использовать \\ и \ newline, но безрезультатно. Какие-либо предложения?

Заранее спасибо.

+2

Изменение 'узла [пакет]' 'к узлу [мешок, выравнивание]' и использовать \\. Дубликат: http://tex.stackexchange.com/questions/123671/manual-automatic-line-breaks-and-text-alignment-in-tikz-nodes и http://tex.stackexchange.com/questions/31096/ как-могу-я-использование-LINEBREAK-внутри-а-узел-в-tikz. «Если вы хотите вручную вставить разрывы строк, вы можете использовать \\ и необязательный аргумент align. (Если вы не укажете опцию для выравнивания, разрыв строки не произойдет, и проблема, отмеченная OP, произойдет.) " – Ramashalanka

+0

Привет! Пожалуйста, сообщите нам, если ответ ниже решит вашу проблему. – MattAllegro

ответ

1

Начиная с вашего кода,

\documentclass[multi=false,border=2mm]{standalone} 
\usepackage{tikz} 
\usetikzlibrary{trees} 

\tikzstyle{level 1}=[level distance=3.5cm, sibling distance=4.0cm] 
\tikzstyle{level 2}=[level distance=3.5cm, sibling distance=2cm] 

\tikzstyle{bag} = [align=center] 

\begin{document} 

\begin{tikzpicture}[grow=right, sloped] 
\node[bag] {} 
    child { 
     node[bag] {Not diseased\\ $\left(D^- \right)$} %% 1 
      edge from parent 
      node[below] {$0.90$} 
    } 
    child { 
     node[bag] {Diseased\\ $\left(D^+ \right)$} %% 2 
      edge from parent 
      node[above] {Prevalence} 
      node[below] {$0.10$} 
    }; 
\end{tikzpicture} 

\end{document} 

делает работу: обратите внимание, что я только изменил \tikzstyle{bag} от [text centered] к [align=center] и добавил \\ в линиях отмечены %% 1 и %% 2.

Полученное дерево:

output pdf