1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
\begin{tikzpicture}
\begin{sankeydiagram}%[debug]
\colorlet{cold}[rgb]{cyan!75!blue!50!white}
\colorlet{hot}[rgb]{red!50!orange!75!white}
\sankeyset{
ratio=90pt/6,minimum radius=15pt,
start style=simple,end style=simple,
draw/.style={
draw=blue!50!cyan,
line width=1pt,line cap=round,line join=round,
},
cold/.style={
fill/.style={
draw=cold,line width=0pt,fill=cold,
},
},
cold to hot/.style={
fill/.style={
fill=none,top color=cold,
bottom color=hot,middle color=yellow,
},
},
hot/.style={
fill/.style={
draw=hot,line width=0pt,fill=hot,
},
},
}
\sankeyset{cold}
\sankeynodestart{name=p0,at={100,0},angle=-90,quantity=6}
\sankeyadvance{p0}{50pt}
\sankeyfork{p0}{3/p1,3/p2}
\sankeyturnleft{p1}{90}
\sankeyadvance{p1}{20pt}
\sankeyadvance{p2}{60pt}
\sankeyfork{p2}{2/p3,1/p4}
\sankeyturnleft{p3}{90}
\sankeyadvance{p3}{50pt}
\sankeyfork{p3}{1/p5,1/p6}
\sankeyadvance{p5}{70pt}
\sankeyfork{p1}{1/p7,1/p8,1/p9}
\sankeyadvance{p7}{50pt}
\sankeyadvance{p9}{50pt}
\sankeyadvance{p4}{40pt}
\sankeyturnleft{p4}{90}
\sankeyadvance{p4}{65pt}
\sankeyadvance{p7}{40pt}
\sankeynode{
name=p11,at={[shift={(50pt,-15pt)}]p7},quantity=3,
forked={1/p7a,1/p9a,1/p5a},
}
\sankeyoutin{p7}{p7a}
\sankeyoutin{p9}{p9a}
\sankeyoutin{p5}{p5a}
\sankeyadvance{p11}{30pt}
\sankeyend{p11}
\sankeyturnright{p8}{90}
\sankeyturnright{p6}{90}
\sankeyturnright{p4}{90}
\sankeyset{hot}
\sankeyadvance[cold to hot]{p8}{40pt}
\sankeynode{
name=p10,at={[shift={(-15pt,-60pt)}]p8},angle=-90,quantity=3,
forked={1/p8a,1/p6a,1/p4a},
}
\sankeyoutin[cold to hot]{p4}{p4a}
\sankeyoutin[cold to hot]{p6}{p6a}
\sankeyoutin{p8}{p8a}
\sankeyadvance{p10}{30pt}
\sankeyend{p10}
\end{sankeydiagram}
\end{tikzpicture}
|