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

发布于 2015-09-04 04:50:50
绕过你的标题中描述的问题的一个廉价的技巧是在必要的地方手动在本地连字符文本。在您的示例中,您可以将代码的第27行(为了保持一致性)、第30行和第32行分别更改为:
child[concept color=purple!30]{node{Actino\-bacteria}..。
child{node{\textit{Coryne\-bacterium}}..。
child{node{\textit{Myco\-bacterium}}发布于 2017-08-15 17:45:06
我使用了一个额外的节点(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}

https://stackoverflow.com/questions/29519770
复制相似问题