我正在尝试构建科特的双重操作模型,该模型由左侧的层次结构和右侧的网络组成。
实际上我认为可以使用“森林”和“思维导图”来实现。我不确定:
- 这是正确的做法吗
- 如何让层次结构在左边,网络在右边
\documentclass{article}
\usepackage{tikz,times,forest,array,geometry}
\newcolumntype{C}[1]{>{\centering}p{#1}}
\usetikzlibrary{mindmap,backgrounds,shadows}
\pagestyle{empty}
\begin{document}
\centering\begin{tikzpicture}[mindmap,level 1 concept/.append style={level distance=130,sibling angle=40},extra concept/.append style={color=blue!50,text=black}]
% Area1 Initiative
\begin{scope}[mindmap, concept color=orange, text=white]
\node [concept] {Initiative}[clockwise from=-5]
child {node [concept] (log) {Subinitiaves}}
child {node [concept] (alg) {Subinitiaves}}
child {node [concept] (cod) {Subinitiaves}}
child {node [concept] (img) {Subinitiaves}}
child {node [concept] (opt) {Subinitiaves}}
child {node [concept] (res) {Subinitiaves}}
child {node [concept] (res) {Subinitiaves}};
\end{scope}
% Area 2 Initiative
\begin{scope}[mindmap, concept color=red,text=white]
\node [concept] at (-3,-10) {Initiative}
child [grow=-10, level distance=160]{node [concept] (qin) {Subinitiaves}}
child [grow=150] {node [concept] (csm) {Subinitiaves}}
child [grow=110] {node [concept] (mat) {Subinitiaves}};
\end{scope}
% Area 3 Initiative
\begin{scope}[mindmap, concept color=green!50!black,text=white]
\node [concept] at (8,-10) {Initiative}
child [grow=165, level distance=120] {node [concept] (med) {Subinitiaves}}
child [grow=60] {node [concept] (gen) {Subinitiaves}}
child [grow=120] {node [concept] (gen) {Subinitiaves}};
\end{scope}
% Area 3 Initiative (one subfield)
\begin{scope}[mindmap, concept color=violet, text=white]
\node [concept] at (11,-1) {Initiative}
child [grow=70, level distance=120] {node [concept] (dec) {Subinitiative}}
child [grow=70, level distance=10] {node [concept] (dec) {Subinitiative}};
\end{scope}
\end{tikzpicture}
\begin{forest}
for tree={
if level=0{align=center}{% allow multi-line text and set alignment
align={@{}C{25mm}@{}},
},
draw,
font=\sffamily\bfseries,
edge path={
\noexpand\path [draw, \forestoption{edge}] (!u.parent anchor) -- +(0,-5mm) -| (.child anchor)\forestoption{edge label};
},
parent anchor=south,
child anchor=north,
l sep=10mm,
tier/.wrap pgfmath arg={tier #1}{level()},
edge={ultra thick, rounded corners=2pt},
ultra thick,
inner color=gray!5,
outer color=gray!20,
rounded corners=2pt,
drop shadow,
}
[multiple line\\text
[text]
[very long single line text]
[text
[text]
[text]
[text]
]
[text]
]
\end{forest}
\end{document}