|
a |
|
b/doc/_static/diagrams/ica.dot |
|
|
1 |
digraph ICAdiagram { |
|
|
2 |
/* LAYOUT CONTROL */ |
|
|
3 |
rankdir=LR |
|
|
4 |
newrank=true |
|
|
5 |
ranksep=0.75 |
|
|
6 |
clusterrank=local |
|
|
7 |
|
|
|
8 |
/* GLOBAL STYLES */ |
|
|
9 |
splines=true |
|
|
10 |
fontsize=20 |
|
|
11 |
fontname="Source Code Pro" |
|
|
12 |
|
|
|
13 |
node [style="filled" |
|
|
14 |
fontsize=18 |
|
|
15 |
fontname="Source Sans Pro"] |
|
|
16 |
|
|
|
17 |
edge [arrowsize=1.2 |
|
|
18 |
penwidth=2.5 |
|
|
19 |
color="gray50" |
|
|
20 |
fontsize=12 |
|
|
21 |
fontname="Source Code Pro"] |
|
|
22 |
|
|
|
23 |
/* starting nodes */ |
|
|
24 |
sensor [label="Sensor data" shape="box" fillcolor="#bbbbbb"] |
|
|
25 |
cov [label="Noise cov" shape="box" fillcolor="#bbbbbb"] |
|
|
26 |
|
|
|
27 |
/* ICA.FIT() */ |
|
|
28 |
subgraph cluster_0 { |
|
|
29 |
label="ICA.fit()" |
|
|
30 |
color="#009988" |
|
|
31 |
fontcolor="#009988" |
|
|
32 |
penwidth=1.5 |
|
|
33 |
|
|
|
34 |
|
|
|
35 |
/* PRE-WHITENING */ |
|
|
36 |
subgraph cluster_1 { |
|
|
37 |
label="Whitening" |
|
|
38 |
style="dashed" |
|
|
39 |
fontname="Source Sans Pro" |
|
|
40 |
color="gray50" |
|
|
41 |
fontcolor="gray50" |
|
|
42 |
/* nodes & edges */ |
|
|
43 |
pre [label="Pre-\nwhiten" fontsize=11 shape="circle" fillcolor="#ee7733"] |
|
|
44 |
pre -> pca |
|
|
45 |
pca [label="PCA" shape="circle" fillcolor="#ee7733"] |
|
|
46 |
pcs [label="Principal\ncomponents" shape="box" fillcolor="#33bbee"] |
|
|
47 |
pca -> pcs |
|
|
48 |
} |
|
|
49 |
|
|
|
50 |
/* nodes & edges */ |
|
|
51 |
ica [label="ICA" shape="circle" fillcolor="#ee7733"] |
|
|
52 |
ics [label="Independent\ncomponents" shape="box" fillcolor="#33bbee"] |
|
|
53 |
ica -> ics [label="n_components\r"] |
|
|
54 |
} |
|
|
55 |
|
|
|
56 |
/* ICA.APPLY() */ |
|
|
57 |
subgraph cluster_2 { |
|
|
58 |
label="ICA.apply()" |
|
|
59 |
color="#ee3377" |
|
|
60 |
fontcolor="#ee3377" |
|
|
61 |
penwidth=1.5 |
|
|
62 |
/* ending node */ |
|
|
63 |
recon [label="Reconstructed\nsensor data" shape="box" fillcolor="#bbbbbb"] |
|
|
64 |
} |
|
|
65 |
|
|
|
66 |
/* subgraph-crossing edges */ |
|
|
67 |
sensor -> pre [label="all sensor channels\r" fontsize=14 fontname="Source Sans Pro"] |
|
|
68 |
cov -> pre [label="covariance or std. dev.\r" fontsize=14 fontname="Source Sans Pro"] |
|
|
69 |
pcs -> ica [label="n_components\l"] |
|
|
70 |
ics -> recon [constraint=false color="#ee3377" |
|
|
71 |
xlabel="Retained ICs:\ln_components -\llen(ICA.exclude)\l"] |
|
|
72 |
pcs -> recon [constraint=false color="#ee3377" |
|
|
73 |
xlabel="PCA residual:\ln_pca_components\l- n_components\l"] |
|
|
74 |
|
|
|
75 |
/* position recon box where we want it */ |
|
|
76 |
{ rank="same" recon ica } |
|
|
77 |
} |