This randomly-generated tree is positioned using a force simulation.
-
-
Save giorgi-ghviniashvili/4fcfc2b4d67158bb1ac0ac67c9827343 to your computer and use it in GitHub Desktop.
Force-Directed Tree
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
license: gpl-3.0 | |
height: 960 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Session # | Step # | User Action | Prod1 | Prod2 | Prod3 | Prob (%) | Margin ($) | |
---|---|---|---|---|---|---|---|---|
0 | 1 | Login | 57 | 32 | 20 | 1.63 | ||
0 | 2 | Add Prd3, Cont | 409 | 37 | 404 | 1.19 | ||
0 | 3 | Search | 8 | 67 | 63 | 0.73 | ||
0 | 4 | Add Prd3, Cont | 572 | 490 | 1153 | 1.01 | ||
0 | 5 | Add Prd3, Pay & Exit | 49.68 | 195.58 | ||||
1 | 1 | Login | 17 | 20 | 38 | 2.17 | ||
1 | 2 | Add Prd2, Pay & Exit | 81.78 | 122.82 | ||||
2 | 1 | Login | 56 | 17 | 20 | 1.7 | ||
2 | 2 | Add Prd1, Cont | 705 | 962 | 37 | 0.95 | ||
2 | 3 | Add Prd2, Pay & Exit | 68.55 | 257.62 | ||||
3 | 1 | Login | 17 | 38 | 27 | 1.33 | ||
3 | 2 | Add Prd1, Cont | 705 | 37 | 404 | 1.75 | ||
3 | 3 | Add Prd2, Pay & Exit | 2.12 | 505.1 | ||||
4 | 1 | Login | 32 | 11 | 38 | 1.77 | ||
4 | 2 | Add Prd3, Pay & Exit | 86.2 | 119.25 | ||||
5 | 1 | Login | 9 | 54 | 57 | 1.56 | ||
5 | 2 | Search | 167 | 536 | 202 | 0.91 | ||
5 | 3 | Add Prd3, Cont | 167 | 536 | 202 | 0.52 | ||
5 | 4 | Add Prd3, Pay & Exit | 28.23 | 114.86 | ||||
6 | 1 | Login | 56 | 20 | 11 | 0.54 | ||
6 | 2 | Add Prd2, Cont | 123 | 962 | 742 | 0.01 | ||
6 | 3 | Search | 30 | 51 | 9 | 1.05 | ||
6 | 4 | Add Prd1, Cont | 547 | 361 | 770 | 1 | ||
6 | 5 | Add Prd1, Pay & Exit | 9.01 | 83.24 | ||||
7 | 1 | Login | 20 | 11 | 57 | 1.52 | ||
7 | 2 | Add Prd1, Pay & Exit | 56.65 | 122.82 | ||||
8 | 1 | Login | 43 | 27 | 57 | 1.89 | ||
8 | 2 | Add Prd1, Pay & Exit | 7.9 | 111.72 | ||||
9 | 1 | Login | 43 | 27 | 38 | 2.22 | ||
9 | 2 | Exit Without Paying | 70.5 | 0 | ||||
10 | 1 | Login | 11 | 20 | 43 | 2.1 | ||
10 | 2 | Add Prd1, Cont | 96.23 | |||||
10 | 3 | Exit Without Paying | 0.65 | 0 | ||||
11 | 1 | Login | 9 | 8 | 28 | 0.63 | ||
11 | 2 | Search | 15 | 30 | 33 | 1.61 | ||
11 | 3 | Add Prd3, Cont | 655 | 917 | 526 | 0.88 | ||
11 | 4 | Add Prd2, Pay & Exit | 66.96 | 364.39 | ||||
12 | 1 | Login | 56 | 11 | 32 | 2.14 | ||
12 | 2 | Add Prd1, Pay & Exit | 50.78 | 35.97 | ||||
13 | 1 | Login | 54 | 16 | 64 | 1.86 | ||
13 | 2 | Search | 28 | 11 | 33 | 1.51 | ||
13 | 3 | Add Prd2, Cont | 875 | 1044 | 732 | 1.35 | ||
13 | 4 | Add Prd1, Pay & Exit | 59.74 | 470.55 | ||||
14 | 1 | Login | 27 | 17 | 11 | 2.02 | ||
14 | 2 | Add Prd2, Cont | 409 | 705 | 404 | 0.18 | ||
14 | 3 | Add Prd2, Pay & Exit | 64.15 | 390.85 | ||||
15 | 1 | Login | 20 | 56 | 17 | 1.83 | ||
15 | 2 | Add Prd3, Cont | 705 | 1151 | 409 | 1.06 | ||
15 | 3 | Buy | 86.68 | 125.49 | ||||
16 | 1 | Login | 32 | 43 | 38 | 0.62 | ||
16 | 2 | Add Prd1, Cont | 643 | 404 | 1151 | 1.34 | ||
16 | 3 | Search | 9 | 54 | 43 | 0.37 | ||
16 | 4 | Add Prd3, Cont | 735 | 395 | 587 | 0.09 | ||
16 | 5 | Add Prd1, Pay & Exit | 38.75 | 314.07 | ||||
17 | 1 | Login | 27 | 11 | 43 | 2.07 | ||
17 | 2 | Add Prd2, Pay & Exit | 3.97 | 146 | ||||
18 | 1 | Login | 57 | 17 | 56 | 0.76 | ||
18 | 2 | Add Prd1, Cont | 962 | 37 | 643 | 0.12 | ||
18 | 3 | Buy | 26.95 | 46.86 | ||||
19 | 1 | Login | 27 | 17 | 38 | 1.49 | ||
19 | 2 | Add Prd3, Pay & Exit | 41.45 | 119.25 | ||||
20 | 1 | Login | 32 | 27 | 17 | 2.03 | ||
20 | 2 | Add Prd3, Cont | 742 | 37 | 409 | 0.68 | ||
20 | 3 | Buy | 9.56 | 125.49 | ||||
21 | 1 | Login | 38 | 32 | 20 | 1.96 | ||
21 | 2 | Add Prd3, Pay & Exit | 61.91 | 122.82 | ||||
22 | 1 | Login | 27 | 32 | 38 | 1.18 | ||
22 | 2 | Add Prd2, Cont | 742 | 1151 | 962 | 0.58 | ||
22 | 3 | Cat Pg - Home Decor | 54 | 23 | 2 | 1.52 | ||
22 | 4 | Exit Without Paying | 73.55 | 0 | ||||
23 | 1 | Login | 17 | 43 | 27 | 0.23 | ||
23 | 2 | Add Prd3, Pay & Exit | 64.51 | 102 | ||||
24 | 1 | Login | 57 | 20 | 11 | 0.1 | ||
24 | 2 | Add Prd2, Cont | 404 | 123 | 409 | 0.36 | ||
24 | 3 | Exit Without Paying | 23.8 | 0 | ||||
25 | 1 | Login | 20 | 27 | 32 | 1.46 | ||
25 | 2 | Add Prd2, Cont | 37 | 404 | 742 | 2.13 | ||
25 | 3 | Add Prd3, Pay & Exit | 42.95 | 420.92 | ||||
26 | 1 | Login | 9 | 54 | 8 | 1.3 | ||
26 | 2 | Search | 7 | 18 | 32 | 1.6 | ||
26 | 3 | Add Prd2, Cont | 61 | 1042 | 811 | 0.67 | ||
26 | 4 | Add Prd2, Pay & Exit | 85.63 | 385.27 | ||||
27 | 1 | Login | 30 | 14 | 54 | 2.09 | ||
27 | 2 | Search | 1 | 23 | 11 | 1.73 | ||
27 | 3 | Add Prd1, Cont | 270 | 105 | 1054 | 0.28 | ||
27 | 4 | Add Prd2, Pay & Exit | 74.77 | 199.58 | ||||
28 | 1 | Login | 9 | 54 | 8 | 1.3 | ||
28 | 2 | Search | 23 | 22 | 13 | 0.16 | ||
28 | 3 | Add Prd2, Cont | 543 | 259 | 1120 | 0.87 | ||
28 | 4 | Add Prd2, Pay & Exit | 34.04 | 426.93 | ||||
29 | 1 | Login | 11 | 56 | 32 | 0.53 | ||
29 | 2 | Add Prd3, Pay & Exit | 23.08 | 96.75 | ||||
30 | 1 | Login | 38 | 32 | 57 | 2.17 | ||
30 | 2 | Add Prd2, Cont | 404 | 409 | 1151 | 1.73 | ||
30 | 3 | Buy | 56.02 | 96.75 | ||||
31 | 1 | Login | 32 | 38 | 20 | 1.61 | ||
31 | 2 | Add Prd2, Cont | 705 | 404 | 742 | 1.47 | ||
31 | 3 | Add Prd1, Pay & Exit | 54.16 | 384.61 | ||||
32 | 1 | Login | 43 | 27 | 56 | 2.08 | ||
32 | 2 | Add Prd3, Pay & Exit | 88.58 | 35.97 | ||||
33 | 1 | Login | 56 | 32 | 20 | 0.77 | ||
33 | 2 | Exit Without Paying | 61.39 | 0 | ||||
34 | 1 | Login | 27 | 17 | 20 | 0.08 | ||
34 | 2 | Add Prd3, Cont | 1151 | 409 | 37 | 1.76 | ||
34 | 3 | Add Prd3, Pay & Exit | 39.44 | 502.43 | ||||
35 | 1 | Login | 17 | 27 | 38 | 0.93 | ||
35 | 2 | Add Prd2, Pay & Exit | 44.08 | 102 | ||||
36 | 1 | Login | 43 | 57 | 27 | 0.06 | ||
36 | 2 | Add Prd3, Cont | 404 | 123 | 643 | 1.31 | ||
36 | 3 | Search | 9 | 54 | 47 | 1.26 | ||
36 | 4 | Add Prd3, Cont | 437 | 795 | 879 | 1.91 | ||
36 | 5 | Add Prd1, Pay & Exit | 65.95 | 200.34 | ||||
37 | 1 | Login | 67 | 4 | 52 | 1.53 | ||
37 | 2 | Search | 67 | 4 | 52 | 0.7 | ||
37 | 3 | Add Prd2, Cont | 310 | 204 | 24 | 1.43 | ||
37 | 4 | Add Prd3, Pay & Exit | 92.32 | 463.47 | ||||
38 | 1 | Login | 67 | 4 | 52 | 1.53 | ||
38 | 2 | Cat Pg - Home Organization | 20 | 21 | 44 | 1.17 | ||
38 | 3 | Add Prd3, Pay & Exit | 39.59 | 54.15 | ||||
39 | 1 | Login | 38 | 27 | 43 | 0.05 | ||
39 | 2 | Add Prd2, Pay & Exit | 99.05 | 102 | ||||
40 | 1 | Login | 17 | 27 | 38 | 0.93 | ||
40 | 2 | Cat Pg - Stereos, Home | 28 | 64 | 46 | 1 | ||
40 | 3 | Add Prd1, Pay & Exit | 99.93 | 75.75 | ||||
41 | 1 | Login | 57 | 56 | 17 | 1.27 | ||
41 | 2 | Add Prd1, Cont | 37 | 409 | 643 | 0.97 | ||
41 | 3 | Cat Pg - Cameras | 36 | 31 | 10 | 1 | ||
41 | 4 | Add Prd2, Pay & Exit | 36.12 | 63.75 | ||||
42 | 1 | Login | 9 | 54 | 44 | 0.06 | ||
42 | 2 | Search | 76 | 83 | 833 | 1.53 | ||
42 | 3 | Add Prd2, Cont | 882 | 981 | 113 | 1.45 | ||
42 | 4 | Add Prd2, Pay & Exit | 89.15 | 333.78 | ||||
43 | 1 | Login | 38 | 20 | 56 | 0.62 | ||
43 | 2 | Add Prd2, Cont | 37 | 404 | 705 | 0.31 | ||
43 | 3 | Add Prd3, Pay & Exit | 11.04 | 388.18 | ||||
44 | 1 | Login | 17 | 57 | 43 | 0.84 | ||
44 | 2 | Add Prd1, Cont | 962 | 409 | 37 | 1.12 | ||
44 | 3 | Exit Without Paying | 63.54 | 0 | ||||
45 | 1 | Login | 57 | 11 | 27 | 0.07 | ||
45 | 2 | Add Prd1, Pay & Exit | 84 | 46.86 | ||||
46 | 1 | Login | 30 | 16 | 61 | 1.38 | ||
46 | 2 | Search | 9 | 83 | 888 | 0.9 | ||
46 | 3 | Add Prd2, Cont | 521 | 921 | 123 | 1.89 | ||
46 | 4 | Add Prd3, Pay & Exit | 27.91 | 583.87 | ||||
47 | 1 | Login | 56 | 43 | 17 | 1.89 | ||
47 | 2 | Add Prd1, Pay & Exit | 67.21 | 35.97 | ||||
48 | 1 | Login | 17 | 32 | 38 | 0.41 | ||
48 | 2 | Add Prd1, Pay & Exit | 46.5 | 125.49 | ||||
49 | 1 | Login | 57 | 43 | 11 | 1.19 | ||
49 | 2 | Add Prd2, Cont | 37 | 962 | 404 | 0.67 | ||
49 | 3 | Cat Pg - Stereos, Home | 63 | 49 | 48 | 1 | ||
49 | 4 | Add Prd2, Pay & Exit | 2.94 | 45.03 | ||||
50 | 1 | Login | 38 | 11 | 56 | 1.4 | ||
50 | 2 | Add Prd3, Cont | 123 | 404 | 705 | 1.02 | ||
50 | 3 | Add Prd2, Pay & Exit | 31.81 | 331.09 | ||||
51 | 1 | Login | 38 | 27 | 56 | 0.84 | ||
51 | 2 | Exit Without Paying | 89.5 | 0 | ||||
52 | 1 | Login | 38 | 11 | 56 | 1.4 | ||
52 | 2 | Cat Pg - Home Decor | 1 | 3 | 24 | 1.81 | ||
52 | 3 | Add Prd1, Pay & Exit | 60.46 | 147 | ||||
53 | 1 | Login | 17 | 27 | 38 | 0.93 | ||
53 | 2 | Add Prd1, Pay & Exit | 63.62 | 125.49 | ||||
54 | 1 | Login | 38 | 57 | 27 | 2.01 | ||
54 | 2 | Add Prd2, Cont | 705 | 962 | 742 | 0.23 | ||
54 | 3 | Add Prd3, Pay & Exit | 53.77 | 365.78 | ||||
55 | 1 | Login | 20 | 17 | 27 | 0.15 | ||
55 | 2 | Add Prd3, Cont | 37 | 705 | 643 | 1.6 | ||
55 | 3 | Add Prd2, Pay & Exit | 17.64 | 367.36 | ||||
56 | 1 | Login | 17 | 38 | 56 | 1.58 | ||
56 | 2 | Add Prd2, Pay & Exit | 71.9 | 119.25 | ||||
57 | 1 | Login | 43 | 38 | 17 | 0.23 | ||
57 | 2 | Add Prd1, Pay & Exit | 87.11 | 111.72 | ||||
58 | 1 | Login | 43 | 38 | 57 | 1.66 | ||
58 | 2 | Add Prd3, Cont | 404 | 37 | 1151 | 1.88 | ||
58 | 3 | Buy | 72.31 | 46.86 | ||||
59 | 1 | Login | 32 | 11 | 17 | 0.63 | ||
59 | 2 | Add Prd2, Cont | 123 | 705 | 404 | 2.03 | ||
59 | 3 | Add Prd2, Pay & Exit | 28.94 | 411.36 | ||||
60 | 1 | Login | 17 | 11 | 57 | 0.4 | ||
60 | 2 | Add Prd1, Pay & Exit | 25.1 | 125.49 | ||||
61 | 1 | Login | 17 | 11 | 57 | 0.4 | ||
61 | 2 | Add Prd3, Pay & Exit | 12.65 | 46.86 | ||||
62 | 1 | Login | 17 | 27 | 43 | 0.75 | ||
62 | 2 | Add Prd1, Cont | 742 | 409 | 705 | 0.73 | ||
62 | 3 | Buy | 38.38 | 125.49 | ||||
63 | 1 | Login | 38 | 57 | 43 | 0.34 | ||
63 | 2 | Add Prd2, Cont | 962 | 37 | 123 | 0.12 | ||
63 | 3 | Cat Pg - Home Decor | 15 | 23 | 3 | 0.48 | ||
63 | 4 | Add Prd2, Cont | 301 | 373 | 210 | 1 | ||
63 | 5 | Exit Without Paying | 73.48 | 0 | ||||
64 | 1 | Login | 43 | 20 | 57 | 1.71 | ||
64 | 2 | Add Prd3, Cont | 123 | 643 | 404 | 0.91 | ||
64 | 3 | Buy | 88.28 | 46.86 | ||||
65 | 1 | Login | 56 | 20 | 43 | 0.25 | ||
65 | 2 | Add Prd1, Pay & Exit | 38.91 | 35.97 | ||||
66 | 1 | Login | 56 | 20 | 43 | 0.25 | ||
66 | 2 | Search | 30 | 67 | 8 | 1.6 | ||
66 | 3 | Add Prd1, Cont | 1139 | 1150 | 615 | 1.37 | ||
66 | 4 | Add Prd1, Pay & Exit | 38.58 | 361.76 | ||||
67 | 1 | Login | 57 | 27 | 17 | 0.48 | ||
67 | 2 | Exit Without Paying | 30.78 | 0 | ||||
68 | 1 | Login | 57 | 38 | 20 | 1.83 | ||
68 | 2 | Add Prd1, Pay & Exit | 80.47 | 46.86 | ||||
69 | 1 | Login | 56 | 32 | 30 | 1.58 | ||
69 | 2 | Add Prd3, Pay & Exit | 18.57 | 87 | ||||
70 | 1 | Login | 38 | 57 | 56 | 2.22 | ||
70 | 2 | Add Prd3, Pay & Exit | 37.48 | 35.97 | ||||
71 | 1 | Login | 38 | 57 | 17 | 1.65 | ||
71 | 2 | Add Prd3, Pay & Exit | 57.79 | 125.49 | ||||
72 | 1 | Login | 9 | 54 | 8 | 1.3 | ||
72 | 2 | Search | 12 | 399 | 3 | 0.98 | ||
72 | 3 | Add Prd2, Cont | 15 | 426 | 191 | 0.35 | ||
72 | 4 | Buy | 64.74 | 26.73 | ||||
73 | 1 | Login | 11 | 17 | 32 | 1.4 | ||
73 | 2 | Add Prd2, Pay & Exit | 63.73 | 125.49 | ||||
74 | 1 | Login | 11 | 17 | 32 | 1.4 | ||
74 | 2 | Cat Pg - Home Organization | 45 | 43 | 20 | 1.11 | ||
74 | 3 | Add Prd2, Pay & Exit | 45.96 | 111.72 | ||||
75 | 1 | Login | 38 | 27 | 32 | 0.63 | ||
75 | 2 | Add Prd3, Pay & Exit | 91.68 | 96.75 | ||||
76 | 1 | Login | 38 | 27 | 32 | 0.63 | ||
76 | 2 | Cat Pg - Cameras | 30 | 33 | 67 | 1 | ||
76 | 3 | Add Prd2, Pay & Exit | 71.78 | 60.75 | ||||
77 | 1 | Login | 27 | 20 | 43 | 1.94 | ||
77 | 2 | Add Prd1, Pay & Exit | 82.81 | 102 | ||||
78 | 1 | Login | 16 | 11 | 57 | 1.56 | ||
78 | 2 | Add Prd2, Pay & Exit | 58.82 | 146 | ||||
79 | 1 | Login | 16 | 11 | 57 | 1.56 | ||
79 | 2 | Search | 30 | 8 | 67 | 0.82 | ||
79 | 3 | Add Prd1, Cont | 1207 | 569 | 984 | 0.69 | ||
79 | 4 | Add Prd1, Pay & Exit | 52.27 | 349.73 | ||||
80 | 1 | Login | 17 | 11 | 56 | 1.28 | ||
80 | 2 | Add Prd3, Cont | 409 | 742 | 37 | 1.46 | ||
80 | 3 | Add Prd3, Pay & Exit | 6.86 | 415.58 | ||||
81 | 1 | Login | 9 | 54 | 68 | 0.82 | ||
81 | 2 | Search | 87 | 778 | 83 | 0.71 | ||
81 | 3 | Add Prd2, Cont | 576 | 808 | 1187 | 1.27 | ||
81 | 4 | Cat Pg - Stereos, Home | 28 | 46 | 22 | 1 | ||
81 | 5 | Add Prd1, Pay & Exit | 67.55 | 75.75 | ||||
82 | 1 | Login | 20 | 38 | 32 | 0.99 | ||
82 | 2 | Add Prd3, Cont | 1151 | 705 | 123 | 0.22 | ||
82 | 3 | Cat Pg - Home Essentials | 30 | 8 | 67 | 1 | ||
82 | 4 | Search | 87 | 3 | 132 | 1.34 | ||
82 | 5 | Add Prd3, Cont | 195 | 1200 | 347 | 0.72 | ||
82 | 6 | Cat Pg - Home Essentials | 6 | 16 | 42 | 1 | ||
82 | 7 | Add Prd2, Pay & Exit | 23.88 | 113.81 | ||||
83 | 1 | Login | 27 | 32 | 56 | 2.15 | ||
83 | 2 | Add Prd2, Pay & Exit | 39.72 | 96.75 | ||||
84 | 1 | Login | 56 | 32 | 57 | 1.08 | ||
84 | 2 | Add Prd3, Cont | 1151 | 962 | 409 | 0.87 | ||
84 | 3 | Exit Without Paying | 16.06 | 0 | ||||
85 | 1 | Login | 43 | 27 | 57 | 1.89 | ||
85 | 2 | Add Prd2, Pay & Exit | 89.52 | 102 | ||||
86 | 1 | Login | 27 | 32 | 20 | 2.05 | ||
86 | 2 | Add Prd2, Pay & Exit | 20.4 | 96.75 | ||||
87 | 1 | Login | 38 | 27 | 57 | 0.21 | ||
87 | 2 | Exit Without Paying | 73.45 | 0 | ||||
88 | 1 | Login | 11 | 32 | 43 | 1.05 | ||
88 | 2 | Add Prd3, Pay & Exit | 21.59 | 111.72 | ||||
89 | 1 | Login | 38 | 4 | 17 | 0.35 | ||
89 | 2 | Exit Without Paying | 80.98 | 0 | ||||
90 | 1 | Login | 57 | 43 | 20 | 1.28 | ||
90 | 2 | Add Prd3, Cont | 37 | 123 | 409 | 0.02 | ||
90 | 3 | Add Prd2, Pay & Exit | 30.5 | 591.88 | ||||
91 | 1 | Login | 38 | 16 | 47 | 1.92 | ||
91 | 2 | Add Prd2, Pay & Exit | 12.7 | 114.81 | ||||
92 | 1 | Login | 20 | 17 | 43 | 1.71 | ||
92 | 2 | Add Prd3, Cont | 1151 | 123 | 705 | 0.99 | ||
92 | 3 | Buy | 96.51 | 111.72 | ||||
93 | 1 | Login | 56 | 27 | 38 | 1.7 | ||
93 | 2 | Add Prd2, Cont | 409 | 404 | 705 | 2.08 | ||
93 | 3 | Add Prd1, Pay & Exit | 81.05 | 414.48 | ||||
94 | 1 | Login | 56 | 38 | 32 | 1.91 | ||
94 | 2 | Add Prd1, Pay & Exit | 4.08 | 35.97 | ||||
95 | 1 | Login | 20 | 32 | 11 | 0.22 | ||
95 | 2 | Exit Without Paying | 64.63 | 0 | ||||
96 | 1 | Login | 20 | 32 | 11 | 0.22 | ||
96 | 2 | Search | 9 | 54 | 8 | 0.04 | ||
96 | 3 | Add Prd2, Cont | 1194 | 173 | 63 | 0.05 | ||
96 | 4 | Exit Without Paying | 74.46 | 0 | ||||
97 | 1 | Login | 38 | 32 | 11 | 1.86 | ||
97 | 2 | Add Prd2, Cont | 404 | 37 | 742 | 1.27 | ||
97 | 3 | Add Prd1, Pay & Exit | 17.34 | 391.87 | ||||
98 | 1 | Login | 43 | 32 | 38 | 0.9 | ||
98 | 2 | Add Prd2, Cont | 1151 | 705 | 404 | 2.42 | ||
98 | 3 | Add Prd3, Pay & Exit | 76.06 | 391.87 | ||||
99 | 1 | Login | 32 | 38 | 56 | 0.15 | ||
99 | 2 | Add Prd2, Pay & Exit | 2.91 | 119.25 | ||||
100 | 1 | Login | 57 | 56 | 43 | 0.75 | ||
100 | 2 | Exit Without Paying | 4.44 | 0 | ||||
101 | 1 | Login | 32 | 57 | 56 | 1.27 | ||
101 | 2 | Add Prd1, Pay & Exit | 29.4 | 96.75 | ||||
102 | 1 | Login | 32 | 57 | 56 | 1.27 | ||
102 | 2 | Search | 9 | 8 | 4 | 1.04 | ||
102 | 3 | Add Prd3, Cont | 108 | 226 | 74 | 1.61 | ||
102 | 4 | Buy | 19.88 | 114 | ||||
103 | 1 | Login | 32 | 57 | 56 | 1.27 | ||
103 | 2 | Cat Pg - Home Decor | 15 | 39 | 23 | 0.19 | ||
103 | 3 | Add Prd1, Cont | 60 | 361 | 91 | 1.65 | ||
103 | 4 | Cat Pg - Home Organization | 61 | 21 | 27 | 1 | ||
103 | 5 | Add Prd1, Cont | 599 | 672 | 809 | 1 | ||
103 | 6 | Add Prd2, Pay & Exit | 65.94 | 261.36 | ||||
104 | 1 | Login | 32 | 57 | 56 | 1.27 | ||
104 | 2 | Search | 42 | 27 | 68 | 1.14 | ||
104 | 3 | Add Prd2, Cont | 234 | 584 | 214 | 0.9 | ||
104 | 4 | Buy | 88.83 | 102 | ||||
105 | 1 | Login | 11 | 38 | 20 | 1.87 | ||
105 | 2 | Add Prd3, Pay & Exit | 33.84 | 122.82 | ||||
106 | 1 | Login | 32 | 17 | 43 | 0.31 | ||
106 | 2 | Add Prd3, Pay & Exit | 59.09 | 111.72 | ||||
107 | 1 | Login | 57 | 27 | 43 | 0.53 | ||
107 | 2 | Add Prd2, Cont | 643 | 962 | 705 | 0.41 | ||
107 | 3 | Buy | 54.21 | 102 | ||||
108 | 1 | Login | 17 | 43 | 32 | 1.2 | ||
108 | 2 | Add Prd3, Cont | 742 | 705 | 643 | 0.99 | ||
108 | 3 | Buy | 1.63 | 96.75 | ||||
109 | 1 | Login | 56 | 27 | 57 | 1.43 | ||
109 | 2 | Add Prd2, Pay & Exit | 11.56 | 102 | ||||
110 | 1 | Login | 32 | 20 | 17 | 0.72 | ||
110 | 2 | Add Prd3, Cont | 643 | 962 | 123 | 0.86 | ||
110 | 3 | Search | 8 | 30 | 67 | 1.59 | ||
110 | 4 | Add Prd2, Cont | 396 | 123 | 342 | 1 | ||
110 | 5 | Add Prd2, Pay & Exit | 24.27 | 556.06 | ||||
111 | 1 | Login | 57 | 38 | 17 | 1.41 | ||
111 | 2 | Add Prd3, Cont | 962 | 123 | 37 | 0.17 | ||
111 | 3 | Add Prd1, Pay & Exit | 1.23 | 347.14 | ||||
112 | 1 | Login | 27 | 20 | 43 | 1.94 | ||
112 | 2 | Add Prd2, Pay & Exit | 7.9 | 122.82 | ||||
113 | 1 | Login | 27 | 20 | 43 | 1.94 | ||
113 | 2 | Cat Pg - Home Organization | 60 | 19 | 7 | 0.72 | ||
113 | 3 | Add Prd2, Cont | 810 | 521 | 772 | 0.88 | ||
113 | 4 | Search | 9 | 52 | 5 | 0.66 | ||
113 | 5 | Add Prd3, Cont | 197 | 850 | 776 | 1.28 | ||
113 | 6 | Add Prd2, Pay & Exit | 6.98 | 442 | ||||
114 | 1 | Login | 27 | 20 | 43 | 1.94 | ||
114 | 2 | Search | 9 | 4 | 40 | 1 | ||
114 | 3 | Add Prd2, Cont | 1087 | 749 | 410 | 1.22 | ||
114 | 4 | Add Prd3, Pay & Exit | 63.85 | 210.39 | ||||
115 | 1 | Login | 11 | 43 | 20 | 1.59 | ||
115 | 2 | Add Prd2, Pay & Exit | 31.32 | 111.72 | ||||
116 | 1 | Login | 11 | 27 | 43 | 1.26 | ||
116 | 2 | Add Prd1, Pay & Exit | 35.18 | 146 | ||||
117 | 1 | Login | 32 | 11 | 20 | 0.89 | ||
117 | 2 | Add Prd1, Cont | 1151 | 404 | 742 | 0.4 | ||
117 | 3 | Exit Without Paying | 86.53 | 0 | ||||
118 | 1 | Login | 32 | 56 | 17 | 1.15 | ||
118 | 2 | Add Prd2, Pay & Exit | 44.55 | 35.97 | ||||
119 | 1 | Login | 32 | 56 | 17 | 1.15 | ||
119 | 2 | Search | 30 | 67 | 8 | 1.6 | ||
119 | 3 | Add Prd2, Cont | 11 | 194 | 22 | 0.67 | ||
119 | 4 | Add Prd2, Pay & Exit | 19.66 | 183.09 | ||||
120 | 1 | Login | 11 | 32 | 43 | 1.05 | ||
120 | 2 | Exit Without Paying | 1.51 | 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<meta charset="utf-8"> | |
<canvas width="960" height="960"></canvas> | |
<script src="https://d3js.org/d3.v4.min.js"></script> | |
<script> | |
function getData (data) { | |
let nested = d3.nest().key(d => d["Session #"]).entries(data) | |
let root = {}; | |
let parent; | |
let maxLevel = d3.max(nested, d => d.values.length) - 1; | |
for (let i = 0; i < maxLevel; i++) { | |
let levelActions = getLevelActions(i); | |
if (i === 0) { | |
root.actionText = levelActions[0].actionText; | |
root.children = []; | |
} else { | |
levelActions.forEach(d => { | |
if (parent) { | |
let _parent = parent.filter(x => x.actionText === d.parent | |
&& x.sessions.indexOf(d.sessions[0]) > -1); | |
if (_parent.length) { | |
if (!_parent[0].children) | |
_parent[0].children = []; | |
_parent[0].children.push(d) | |
} | |
} else { | |
root.children.push(d) | |
} | |
}) | |
parent = levelActions; | |
} | |
} | |
function getLevelActions(level) { | |
let actions = []; | |
for (let j = 0; j < nested.length; j++) { | |
let values = nested[j].values; | |
if (!values[level]) continue; | |
let actionText = values[level]["User Action"]; | |
let action = actions.filter(x => x.actionText == actionText); | |
let products = []; | |
if (level > 0) { | |
products = [ | |
values[level - 1].Prod1, | |
values[level - 1].Prod2, | |
values[level - 1].Prod3 | |
] | |
} | |
if (action.length == 0) { | |
actions.push({ | |
actionText: actionText, | |
products: products, | |
level: level, | |
sessions: [+nested[j].key], | |
parent: level == 0 ? null : values[level - 1]["User Action"] | |
}); | |
} else { | |
if (level > 0) { | |
action = action.filter(x => x.products[0] == values[level - 1].Prod1 && | |
x.products[1] == values[level - 1].Prod2 && | |
x.products[2] == values[level - 1].Prod3) | |
if (action.length == 0) { | |
actions.push({ | |
actionText: actionText, | |
products: products, | |
level: level, | |
sessions: [+nested[j].key], | |
parent: values[level - 1]["User Action"] | |
}); | |
} else { | |
action[0].sessions.push(+nested[j].key) | |
} | |
} | |
} | |
} | |
return actions; | |
} | |
return root | |
} | |
d3.csv('data.csv', function (data) { | |
var dt = getData(data); | |
var tree = data => { | |
const root = d3.hierarchy(data); | |
root.dx = 20; | |
root.dy = 960 / (root.height + 1); | |
return d3.tree().nodeSize([root.dx, root.dy])(root); | |
} | |
const root = tree(dt); | |
let x0 = Infinity; | |
let x1 = -x0; | |
let maxDepth = 0; | |
root.each(d => { | |
if (d.x > x1) x1 = d.x; | |
if (d.x < x0) x0 = d.x; | |
if (d.depth > maxDepth) maxDepth = d.depth | |
}); | |
var nodes = root.descendants().reverse(); | |
var links = root.links(); | |
var simulation = d3.forceSimulation(nodes) | |
.force("charge", d3.forceManyBody()) | |
.force("link", d3.forceLink(links).distance(20).strength(1)) | |
.force("x", d3.forceX()) | |
.force("y", d3.forceY()) | |
.on("tick", ticked); | |
var canvas = document.querySelector("canvas"), | |
context = canvas.getContext("2d"), | |
width = canvas.width, | |
height = canvas.height; | |
d3.select(canvas) | |
.attr('height', height) | |
.call(d3.drag() | |
.container(canvas) | |
.subject(dragsubject) | |
.on("start", dragstarted) | |
.on("drag", dragged) | |
.on("end", dragended)); | |
function ticked() { | |
context.clearRect(0, 0, width, height); | |
context.save(); | |
context.translate(width / 2, height / 2); | |
context.beginPath(); | |
links.forEach(drawLink); | |
context.strokeStyle = "#aaa"; | |
context.stroke(); | |
context.beginPath(); | |
nodes.forEach(drawNode); | |
context.fill(); | |
context.strokeStyle = "#fff"; | |
context.stroke(); | |
context.restore(); | |
} | |
function dragsubject() { | |
return simulation.find(d3.event.x - width / 2, d3.event.y - height / 2); | |
} | |
function dragstarted() { | |
if (!d3.event.active) simulation.alphaTarget(0.3).restart(); | |
d3.event.subject.fx = d3.event.subject.x; | |
d3.event.subject.fy = d3.event.subject.y; | |
} | |
function dragged() { | |
d3.event.subject.fx = d3.event.x; | |
d3.event.subject.fy = d3.event.y; | |
} | |
function dragended() { | |
if (!d3.event.active) simulation.alphaTarget(0); | |
d3.event.subject.fx = null; | |
d3.event.subject.fy = null; | |
} | |
function drawLink(d) { | |
context.moveTo(d.source.x, d.source.y); | |
context.lineTo(d.target.x, d.target.y); | |
} | |
function drawNode(d) { | |
context.moveTo(d.x + 3, d.y); | |
context.arc(d.x, d.y, 3, 0, 2 * Math.PI); | |
} | |
}) | |
</script> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
�PNG | |