2017-07-21 9 views
3

私はラテックスパッケージTikzを使用しています。私はTableauを作成しようとしています。私の問題は、ラベルを中央に置くことができるように、兄弟間に十分なスペースを作ることです。これは私がやったことです。私はできるだけマニュアルの間隔を避けたいので、私は一般的な解決策を探しています。Tikzノード間で自動的にラベルを貼り付けます

\begin{tikzpicture}[auto, node distance=1.3cm] 


\node (A) {$X^1$}; 
\node (B) [below of=A] {$X^2$}; 
\node (C) [below of=B] {$X^3$}; 
\node (D) [below of=C] {$X^4$}; 
\node (E) [below of=D] {$X^5$}; 
\node (F) [label={[label distance=-1cm] \color{green}{Complete}}, below left of=E,left=1cm] {$X^6$}; 
\node (G) [below right of=E, right=1cm] {$X^7$}; 
\node (H) [below left of=G,left=1cm] {$X^8$}; 
\node (I) [label={[label distance=-1cm] \color{red}{Closed}}, below right of=G, right=1cm] {$X^9$}; 
\node (L) [label={[label distance=-1cm] \color{red}{Closed}}, below of=H] {$X^{10}$}; 


\path (A) edge (B); 
\path (B) edge (C); 
\path (C) edge (D); 
\path (D) edge (E); 
\path (E) edge node [below=0.3cm, right=0.4cm]{PB-Rule} (F) 
     edge (G); 
    \path (G) edge node [below=0.3cm, right=0.4cm] {PB-Rule} (H) 
     edge (I);   
\path (H) edge node {E-Rule} (L); 

\end{tikzpicture} 

任意の提案ですか?

+0

私が正しく理解していれば、あなたはこれらのマニュアルの間隔を取り除くしたいと思います: '[= 0.3センチメートルの下、右= 0.4センチメートルを]'? – pchaigno

答えて

2

兄弟間のラベルを配置するには、あなたは!0.5!構文を使用することができます。

\begin{tikzpicture}[auto, node distance=1.3cm] 
    \node (A) {$X^1$}; 
    \node (B) [below of=A] {$X^2$}; 
    \node (C) [below of=B] {$X^3$}; 
    \node (D) [below of=C] {$X^4$}; 
    \node (E) [below of=D] {$X^5$}; 
    \node (F) [label={[label distance=-1cm] \color{green}{Complete}}, below left of=E,left=1cm] {$X^6$}; 
    \node (G) [below right of=E, right=1cm] {$X^7$}; 
    \node (H) [below left of=G,left=1cm] {$X^8$}; 
    \node (I) [label={[label distance=-1cm] \color{red}{Closed}}, below right of=G, right=1cm] {$X^9$}; 
    \node (L) [label={[label distance=-1cm] \color{red}{Closed}}, below of=H] {$X^{10}$}; 

    \node (label1) at ($(F)!0.5!(G)$) {PB-Rule}; 
    \node (label2) at ($(H)!0.5!(I)$) {PB-Rule}; 

    \path (A) edge (B); 
    \path (B) edge (C); 
    \path (C) edge (D); 
    \path (D) edge (E); 
    \path (E) edge (F); 
    \path (E) edge (G); 
    \path (G) edge (H); 
    \path (G) edge (I); 
    \path (H) edge node {E-Rule} (L); 
\end{tikzpicture} 

注:あなたがその構文についてカルクは、TikZライブラリが必要になりますが。

enter image description here

関連する問題