How to get, both fork down and right in a TikZ tree or diagram
Here's a Forest version. This uses version 2 which was not published when this question was first asked.
\documentclass[tikz,border=10pt,multi]{standalone}
\usepackage[edges]{forest}
\forestset{%
dir tree switch forking/.style args={at #1}{%
for tree={
font=\sffamily,
fit=rectangle,
},
where level=#1{
for tree={
folder,
grow'=0,
},
delay={
child anchor=north,
!u.parent anchor=south,
edge path'={(!u.parent anchor) -- ++(0,-\forestoption{fork sep}) -| (.child anchor)}
},
}{
if={level()<(#1)}{
forked edge,
parent anchor=children,
child anchor=parent,
}{},
},
before typesetting nodes={
for tree={
content/.wrap value={\strut ##1},
},
if={isodd(n_children("!r"))}{
for nodewalk/.wrap pgfmath arg={{fake=r,n=##1}{calign with current edge}}{int((n_children("!r")+1)/2)},
}{},
},
},
node title/.style={
content={\textbf{#1}},
},
node descriptor/.style={content+={\\#1}},
title splitter/.style={
before typesetting nodes={
split option={content}{:}{node title,node descriptor},
},
},
title split/.style={
for tree={title splitter},
},
}
\begin{document}
\begin{forest}
dir tree switch forking=at 1,
title split,
where level=0{align=center}{text width=30mm},
for tree={draw},
[Title:Long text long text long text long text long text long text
[Title:Long text long text long text long text long text long text
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
]
[Title:Long text long text long text long text long text long text
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
[Title:Long text long text long text long text long text long text]
]
[Title:Long text long text long text long text long text long text
[Title:Long text long text long text long text long text long text]
]
]
\end{forest}
\end{document}
We can then style the tree very straightforwardly by, for example, modifying the line
for tree={draw},
to make the tree a little more interesting
for tree={draw=darkgray, thick, rounded corners, top color=gray!5, bottom color=gray!15, blur shadow, edge+={thick}},
This is what I used to get my concept map. But, what I don't like is the overlapped lines.
\documentclass{article}
\usepackage{tikz,array}
\usetikzlibrary{trees}
\begin{document}
\begin{tikzpicture}
\draw (5,10.5) node (efectof) [draw,fill=black!15,rounded corners,align=left,text width=70mm]{\begin{tabular}{m{67mm}} \center\textbf{text}\\ text\\ \end{tabular} };
\draw (0,7.9) node (efectoi1) [draw,rounded corners,align=left,text width=42mm]{ \textbf{text}\\ \small{text}};
\draw (5,7.9) node (efectoi2) [draw,rounded corners,align=left,text width=42mm]{ \textbf{text}\\ \small{text}};
\draw (10,7.9) node (efectoi3) [draw,rounded corners,align=left,text width=42mm]{ \textbf{text}\\ \small{text}};
\draw (efectof) --++(0,-16mm)-| (efectoi1);
\draw (efectof) -- (efectoi2);
\draw (efectof) --++(0,-16mm)-| (efectoi3);
\draw (0,5.7) node (efectod1) [draw,rounded corners,align=left,text width=42mm]{ \textbf{text}\\ \small{text}};
\draw (5,5.7) node (efectod2) [draw,rounded corners,align=left,text width=42mm]{ \textbf{text}\\ \small{text}};
\draw (10,5.7) node (efectod3) [draw,rounded corners,align=left,text width=42mm]{ \textbf{text}\\ \small{text}};
\draw (efectod1) -- (efectoi1);
\draw (efectod2) -- (efectoi2);
\draw (efectod3) -- (efectoi3);
\draw (5,3) node (problema) [draw,fill=black!15,rounded corners,align=left,text width=70mm]{\begin{tabular}{m{70mm}} \center\textbf{text}\\ text\\\end{tabular} };
\draw (problema) --++(0,15mm)-| (efectod1);
\draw (problema) -- (efectod2);
\draw (problema) --++(0,15mm)-| (efectod3);
\draw (0,0) node (causa1) [draw,rounded corners,align=left,text width=40mm]{ \textbf{text}\\ \small{text}};
\draw (5,0) node (causa2) [draw,rounded corners,align=left,text width=40mm]{ \textbf{text}\\ \small{text}};
\draw (10,0) node (causa3) [draw,rounded corners,align=left,text width=40mm]{ \textbf{text}\\ \small{text}};
\draw (problema) --++(0,-16mm)-| (causa1);
\draw (problema) -- (causa2);
\draw (problema) --++(0,-16mm)-| (causa3);
\draw (0,-2.2) node (indir1) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (0,-4.4) node (indir2) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (0,-6.6) node (indir3) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (0,-8.8) node (indir4) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (causa1.west)--++(-5mm,0mm)|-(indir1.west);
\draw (causa1.west)--++(-5mm,0mm)|-(indir2.west);
\draw (causa1.west)--++(-5mm,0mm)|-(indir3.west);
\draw (causa1.west)--++(-5mm,0mm)|-(indir4.west);
\draw (5,-2.2) node (indir5) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (5,-4.4) node (indir6) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (5,-6.6) node (indir7) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (5,-8.8) node (indir8) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (5,-10.5) node (indir9) [draw,rounded corners,align=left,text width=30mm]{\textbf{text}\\ \small{text}};
\draw (causa2.west)--++(-5mm,0mm)|-(indir5.west);
\draw (causa2.west)--++(-5mm,0mm)|-(indir6.west);
\draw (causa2.west)--++(-5mm,0mm)|-(indir7.west);
\draw (causa2.west)--++(-5mm,0mm)|-(indir8.west);
\draw (causa2.west)--++(-5mm,0mm)|-(indir9.west);
\draw (10,-2.2) node (indir10) [draw,rounded corners,align=left,text width=30mm]{\small{\textbf{text}\\ text}};
\draw (causa3.east)--++(4mm,0mm)|-(indir10.east);
\end{tikzpicture}
\end{document}