2

我创建了一个思维导图(见下文)。我发现我的文本被连接器覆盖了。有没有办法将连接器放置在文本下方,或者将文本放置在连接器上方?我知道我可以通过更改节点大小、字体大小或兄弟角度来绕过这个问题。但我更喜欢当前的外观,所以我不想更改上面的任何参数。我只想更改图层。有没有办法这样做?

\documentclass[12pt,twoside]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usetikzlibrary{mindmap}

\pagestyle{empty}

\begin{document}

\begin{tikzpicture}[mindmap, grow cyclic, every node/.style=concept, concept color=green!80, 
  level 1/.append style={level distance=5cm, sibling angle=180},
  level 2/.append style={level distance=3cm, sibling angle=90}]


\node{Gram positive bacteria}
    child[concept color=orange!80]{ node{Firmicutes}    
        child{node{\textit{Listeria}}
        }
        child{node{\textit{Bacillus}}
        }
        child{node{\textit{Streptococcus}}
        }
        child{node{\textit{Enterococcus}}   
        }
    }   
    child[concept color=purple!30,]{ node{Actinobacteria}
        child{node{\textit{Streptomyces}}
        }
        child{node{\textit{Corynebacterium}}
        }
        child{node{\textit{Mycobacterium}}
        }
    }
;
\end{tikzpicture}

\end{document}

在此处输入图像描述

4

2 回答 2

0

绕过标题中描述的问题的一种廉价黑客是在必要时在本地手动连字符文本。在您的情况下,您可以将代码的第 27 行(为了一致性)、第 30 行和第 32 行分别更改为:

child[concept color=purple!30]{node{Actino\-bacteria}

...

child{node{\textit{Coryne\-bacterium}}

...

child{node{\textit{Myco\-bacterium}}
于 2015-09-03T20:50:49.510 回答
0

在呈现思维导图后,我使用了一个额外的节点 ( mycobacterium) 来编写文本

\begin{tikzpicture}[mindmap, grow cyclic, every node/.style=concept, concept color=green!80, 
  level 1/.append style={level distance=5cm, sibling angle=180},
  level 2/.append style={level distance=3cm, sibling angle=90}]
  \node{Gram positive bacteria}
    child[concept color=orange!80]{ node{Firmicutes}    
        child{node{\textit{Listeria}}
        }
        child{node{\textit{Bacillus}}
        }
        child{node{\textit{Streptococcus}}
        }
        child{node{\textit{Enterococcus}}   
        }
    }   
    child[concept color=purple!30,]{ node{Actinobacteria}
        child{node{\textit{Streptomyces}}
        }
        child{node{\textit{Corynebacterium}}
        }
        child{node (mycobacterium) {}
        }
    };
  \node[extra concept,fill=none,draw=none] at (mycobacterium) {\textit{Mycobacterium}};
\end{tikzpicture}

在此处输入图像描述

于 2017-08-15T09:45:05.687 回答