word clouds are the wedding font of visualization
how do we make word clouds that aren't toys?
%%
shell . environment . globals . update ( vars ( __builtins__ ))
%%
use the ` wordcloud ` package to generate a table of word cloud data to visual
import wordcloud
cloud = wordcloud . WordCloud ()
using the script from george carlin 's 1972 <q>the seven words you can never say on television</q>
https : // genius . com / George - carlin - the - seven - words - you - can - never - say - on - television - annotated
cloud . generate_from_text ( Path ( "seven_words.txt" ) . read_text ())
<wordcloud.wordcloud.WordCloud at 0x79c1c8ad6050>
%%
create a structured dataframe from the text
{{ df . T . style . to_html ()}}
df = DataFrame ( cloud . layout_ )
df = df [ 0 ] . apply ( list ) . series () . rename ( columns = dict ( zip ( df . columns , "word ratio" . split ()))) . combine_first (
df [ df . columns [ 1 :]]
) . set_index ( "word" ) . rename ( columns = { 1 : "ct" , 2 : "position" , 3 : "rotate" , 4 : "color" })
df . rotate = df . rotate . replace ({ 2 : 90 , numpy . nan : 0 })
df = df . combine_first ( df . pop ( "position" ) . apply ( list ) . series () . rename ( columns = { 0 : "x" , 1 : "y" }))
< details >
< summary >
handling image rotations in the data
</ summary >
{{ df . rotate . dropna () . value_counts () . to_frame ( "rotations" ) . style . set_caption (
"frequency of rotations in the parent dataframe"
) . to_html ()}}
& gt ; & gt ; & gt ; assert __import__ ( "PIL" ) . Image . ROTATE_90 == 2
</ details >
create a structured dataframe from the text
word
word
Tits
fuck
say
mean
one
ha ha
think
thought
people
bad
list
Hey
woo
hurt
Shit
piss
cunt
Okay
cocksucker motherfucker
really
television
belong
sounds
Toots
snack
going
course
time
said
two
now
way
prick
finger
love
important
play
y'know
yeah
use
certain
remember
know
even
Man
New
understand
lot
feeling
accidental
humor
long
another
kill
agree
sentence
take
gonna
cock
crowed
balls
thank
hearing
want
tell
something
work
passion
fluid
POP
assign
stuck
careful
heal
matter
pick
English
language
ratio
must
outrageous
separated
group
large
baaad
told
us
intentions
cocksucker
motherfucker
heavy
seven
that'll
infect
soul
curve
spine
keep
country
winning
war
wow
friendly
sounding
nickname
right
come
meet
Yes
sexist
Nabisco
Cheese
Corn
Pizza
Sesame
Onion
Tater
Betcha
Eat
true
usually
switch
Actually
none
completely
insensitive
got
heavyweight
Besides
literal
translation
emotional
busy
syllables
contend
Ks
aggressive
jump
assaualt
dig
mentioned
earlier
letter
Anglo
Saxon
go
together
little
reason
ago
ladies
mind
P'
C'
led
stupid
fuckers
tinkle
well
wanna
beginning
life
yet
quite
often
much
wiser
rather
son
watch
film
making
trying
great
wish
knew
first
step
substitute
movie
cliches
grew
Sheriff
slow
maybe
next
year
whole
fuckin'
ramp
N
hope
never
circumstances
clinically
weave
panel
Doc
Ed
color
rgb(129, 211, 77)
rgb(200, 224, 32)
rgb(39, 127, 142)
rgb(197, 224, 33)
rgb(142, 214, 69)
rgb(64, 69, 136)
rgb(213, 226, 26)
rgb(46, 179, 124)
rgb(39, 126, 142)
rgb(210, 226, 27)
rgb(38, 130, 142)
rgb(51, 99, 141)
rgb(40, 174, 128)
rgb(108, 205, 90)
rgb(74, 193, 109)
rgb(37, 133, 142)
rgb(42, 176, 127)
rgb(205, 225, 29)
rgb(38, 130, 142)
rgb(194, 223, 35)
rgb(71, 19, 101)
rgb(42, 176, 127)
rgb(253, 231, 37)
rgb(64, 70, 136)
rgb(41, 122, 142)
rgb(72, 33, 115)
rgb(205, 225, 29)
rgb(160, 218, 57)
rgb(34, 167, 133)
rgb(50, 101, 142)
rgb(99, 203, 95)
rgb(70, 48, 126)
rgb(31, 161, 135)
rgb(33, 144, 141)
rgb(122, 209, 81)
rgb(39, 128, 142)
rgb(37, 132, 142)
rgb(41, 123, 142)
rgb(42, 119, 142)
rgb(36, 134, 142)
rgb(31, 152, 139)
rgb(76, 194, 108)
rgb(71, 13, 96)
rgb(63, 72, 137)
rgb(57, 86, 140)
rgb(62, 73, 137)
rgb(37, 172, 130)
rgb(88, 199, 101)
rgb(129, 211, 77)
rgb(35, 137, 142)
rgb(70, 51, 127)
rgb(246, 230, 32)
rgb(70, 50, 126)
rgb(53, 183, 121)
rgb(37, 133, 142)
rgb(33, 142, 141)
rgb(37, 172, 130)
rgb(33, 144, 141)
rgb(41, 175, 127)
rgb(108, 205, 90)
rgb(42, 118, 142)
rgb(62, 73, 137)
rgb(66, 64, 134)
rgb(78, 195, 107)
rgb(70, 10, 93)
rgb(192, 223, 37)
rgb(42, 118, 142)
rgb(178, 221, 45)
rgb(69, 55, 129)
rgb(149, 216, 64)
rgb(50, 182, 122)
rgb(122, 209, 81)
rgb(37, 132, 142)
rgb(103, 204, 92)
rgb(49, 104, 142)
rgb(39, 173, 129)
rgb(99, 203, 95)
rgb(149, 216, 64)
rgb(139, 214, 70)
rgb(71, 13, 96)
rgb(38, 130, 142)
rgb(105, 205, 91)
rgb(49, 104, 142)
rgb(192, 223, 37)
rgb(72, 40, 120)
rgb(33, 143, 141)
rgb(103, 204, 92)
rgb(70, 7, 90)
rgb(246, 230, 32)
rgb(218, 227, 25)
rgb(59, 82, 139)
rgb(157, 217, 59)
rgb(51, 99, 141)
rgb(132, 212, 75)
rgb(144, 215, 67)
rgb(96, 202, 96)
rgb(32, 146, 140)
rgb(56, 89, 140)
rgb(58, 84, 140)
rgb(72, 22, 104)
rgb(52, 97, 141)
rgb(74, 193, 109)
rgb(59, 82, 139)
rgb(49, 181, 123)
rgb(35, 169, 131)
rgb(31, 148, 140)
rgb(33, 166, 133)
rgb(70, 48, 126)
rgb(64, 189, 114)
rgb(72, 32, 113)
rgb(72, 32, 113)
rgb(236, 229, 27)
rgb(41, 121, 142)
rgb(47, 107, 142)
rgb(72, 26, 108)
rgb(47, 180, 124)
rgb(56, 88, 140)
rgb(71, 19, 101)
rgb(31, 149, 139)
rgb(53, 95, 141)
rgb(200, 224, 32)
rgb(40, 174, 128)
rgb(69, 56, 130)
rgb(46, 111, 142)
rgb(41, 122, 142)
rgb(223, 227, 24)
rgb(70, 8, 92)
rgb(66, 63, 133)
rgb(115, 208, 86)
rgb(66, 190, 113)
rgb(65, 66, 135)
rgb(72, 20, 103)
rgb(117, 208, 84)
rgb(139, 214, 70)
rgb(47, 180, 124)
rgb(155, 217, 60)
rgb(31, 160, 136)
rgb(39, 127, 142)
rgb(82, 197, 105)
rgb(56, 88, 140)
rgb(46, 179, 124)
rgb(53, 95, 141)
rgb(48, 105, 142)
rgb(59, 82, 139)
rgb(33, 142, 141)
rgb(253, 231, 37)
rgb(70, 48, 126)
rgb(184, 222, 41)
rgb(31, 149, 139)
rgb(49, 181, 123)
rgb(80, 196, 106)
rgb(45, 113, 142)
rgb(38, 173, 129)
rgb(52, 182, 121)
rgb(44, 115, 142)
rgb(31, 159, 136)
rgb(71, 47, 125)
rgb(78, 195, 107)
rgb(34, 141, 141)
rgb(57, 86, 140)
rgb(70, 10, 93)
rgb(62, 73, 137)
rgb(66, 63, 133)
rgb(149, 216, 64)
rgb(181, 222, 43)
rgb(70, 7, 90)
rgb(241, 229, 29)
rgb(38, 130, 142)
rgb(60, 79, 138)
rgb(41, 122, 142)
rgb(72, 41, 121)
rgb(58, 84, 140)
rgb(34, 139, 141)
rgb(65, 66, 135)
rgb(38, 130, 142)
rgb(71, 13, 96)
rgb(31, 154, 138)
rgb(31, 148, 140)
rgb(189, 223, 38)
rgb(74, 193, 109)
rgb(53, 183, 121)
rgb(134, 213, 73)
rgb(129, 211, 77)
rgb(53, 183, 121)
rgb(50, 182, 122)
rgb(129, 211, 77)
rgb(31, 148, 140)
rgb(71, 45, 123)
rgb(37, 131, 142)
rgb(58, 83, 139)
rgb(82, 197, 105)
rgb(69, 5, 89)
rgb(88, 199, 101)
rgb(63, 71, 136)
rgb(30, 157, 137)
rgb(48, 105, 142)
rgb(33, 143, 141)
rgb(72, 28, 110)
rgb(68, 2, 86)
rgb(103, 204, 92)
ct
109
78
61
57
53
53
36
33
26
26
26
26
26
23
23
23
23
23
23
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
ratio
1.000000
0.424242
0.242424
0.212121
0.181818
0.181818
0.181818
0.151515
0.151515
0.151515
0.151515
0.151515
0.151515
0.121212
0.121212
0.121212
0.121212
0.121212
0.121212
0.121212
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.090909
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.060606
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
0.030303
rotate
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
90.000000
0.000000
0.000000
0.000000
90.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
90.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.000000
90.000000
0.000000
0.000000
0.000000
0.000000
90.000000
90.000000
0.000000
90.000000
0.000000
90.000000
x
5
137
89
139
100
64
1
15
172
1
31
1
89
54
72
159
3
178
41
90
6
129
137
167
116
175
59
147
138
135
89
184
189
126
41
66
116
111
52
47
40
73
130
154
167
59
132
179
129
21
163
174
2
84
32
62
192
186
165
52
68
136
52
137
156
153
119
189
91
181
39
21
143
138
148
164
107
17
107
193
2
51
192
183
61
146
131
59
161
93
2
135
23
145
130
22
21
7
78
92
144
1
1
39
170
106
81
1
14
190
142
69
107
146
42
190
79
174
22
99
78
101
11
13
32
21
124
117
29
167
158
45
130
68
126
162
144
19
144
160
34
100
124
120
91
67
119
44
46
154
70
45
2
194
153
116
170
133
45
148
113
145
187
22
139
147
59
158
53
1
147
194
192
29
26
170
135
109
79
70
113
16
191
1
150
109
129
109
1
2
22
77
182
33
150
97
27
54
122
57
y
77
16
131
245
1
359
37
332
198
213
7
361
300
1
23
339
147
338
254
3
5
155
194
93
269
48
53
64
230
133
188
46
107
328
207
296
321
230
162
383
297
203
35
203
65
304
15
135
100
9
199
13
338
276
57
236
210
17
43
233
32
168
299
93
11
52
218
313
223
99
383
284
1
59
4
133
128
206
369
16
117
47
280
63
167
270
282
184
2
362
61
391
81
96
113
226
383
382
237
164
176
136
262
53
224
200
138
199
383
327
137
234
284
215
237
45
102
101
238
285
15
183
78
3
361
168
365
152
13
4
240
392
71
4
240
176
325
1
345
97
265
165
276
125
283
166
110
163
357
95
341
60
47
199
3
52
135
336
293
17
374
308
149
273
365
198
363
52
331
385
134
312
243
123
383
49
118
320
1
212
125
80
1
173
343
342
131
151
146
309
152
333
1
381
393
92
87
272
180
43
df = DataFrame(cloud.layout_)
df = df[0].apply(list).series().rename(columns=dict(zip(df.columns, "word ratio".split()))).combine_first(
df[df.columns[1:]]
).set_index("word").rename(columns={1:"ct", 2: "position", 3: "rotate", 4: "color"})
df.rotate = df.rotate.replace({2: 90, numpy.nan: 0})
df = df.combine_first(df.pop("position").apply(list).series().rename(columns={0:"x", 1: "y"}))
handling image rotations in the data
frequency of rotations in the parent dataframe
ย
rotations
rotate
ย
0.000000
170
90.000000
30
>>> assert __import__("PIL").Image.ROTATE_90 == 2
%%
create the word cloud
< style >
#cloud {
-- width : 1000 px ;
-- height : 600 px ;
position : relative ;
top : 0 ;
left : 0 ;
display : block ;
height : var ( -- height );
width : var ( -- width );
thead {
display : none ; /** should be visuall hidden **/
}
tbody {
transform - style : preserve - 3 d ;
display : block ;
position : relative ;
top : 0 ;
left : 0 ;
transform - origin : top left ;
tr {
top : 0 ;
left : 0 ;
th , td {
background : unset ;
display : block ;
position : absolute ;
font - size : calc (( var ( -- r ) * ( 1 - .1 ) + .1 ) * 10 rem );
span : not ([ aria - hidden ]) {
position : absolute ;
display : inline - block ;
transform :
rotate3d ( 1 , 1 , 1 , 15 deg )
translateX ( calc ( var ( -- x ) / var ( -- x - max ) * var ( -- width )))
translateY ( calc ( var ( -- y ) / var ( -- y - max ) * var ( -- height )))
translateZ ( calc ( var ( -- z , 1 ) * 500 px ));
opacity : var ( -- z );
color : var ( -- color );
}
}
td {
display : none ;
}
th : is (: hover , : focus , : focus - within ) ~ td . ct {
filter : invert ( 100 % );
display : inline - block ;
}
th span : not ([ aria - hidden ]):: after {
content : var ( -- word );
}
th > * ~ span : last - of - type :: after {
- webkit - text - stroke : 2 px black ;
text - stroke : 2 px black ;
}
}
}
}
</ style >
< table id = "cloud" style = "--x-min: {{df.x.min()}}; --x-max: {{df.x.max()}};
-- y - min : {{ df . y . min ()}}; -- y - max : {{ df . y . max ()}}; ">
< thead >
< tr >< th scope = "col" > word </ th > { % for x in df . columns % } < th scope = "col" > {{ x }} </ th > { % endfor % } </ tr >
</ thead >
< tbody > { % for i , row in df . head ( 100 )[:: - 1 ] . iterrows () % }
< tr style = "--x: {{row.x}}; --y: {{row.y}}; --rot: {{row.rotate}}; --r: {{row.ratio}}; --word: '{{i.lower()}}'; --color: {{row.color}};" >
< th scope = "row" >
< span aria - hidden = "true" >
{ %- for inc in ( range ( 2 , row . ct )) -% }
< span style = "--z: {{inc/row.ct}}" ></ span >
{ %- endfor -% } </ span >
< span style = "--z: 1;" ></ span >
</ th >
{ %- for k , value in row . items () -% }
< td class = "{{k}}" >< br />< span > {{ value }} </ span ></ td >
{ %- endfor -% } </ tr > { % endfor -% }
</ tbody >
</ table >
create the word cloud
word color ct ratio rotate x y
rgb(72, 22, 104) 5 0.030303030303030304 0.0 92 164
rgb(58, 84, 140) 5 0.030303030303030304 0.0 78 237
rgb(56, 89, 140) 5 0.030303030303030304 0.0 7 382
rgb(32, 146, 140) 5 0.030303030303030304 0.0 21 383
rgb(96, 202, 96) 5 0.030303030303030304 0.0 22 226
rgb(144, 215, 67) 5 0.030303030303030304 0.0 130 113
rgb(132, 212, 75) 5 0.030303030303030304 0.0 145 96
rgb(51, 99, 141) 5 0.030303030303030304 0.0 23 81
rgb(157, 217, 59) 5 0.030303030303030304 90.0 135 391
rgb(59, 82, 139) 5 0.030303030303030304 0.0 2 61
rgb(218, 227, 25) 5 0.030303030303030304 0.0 93 362
rgb(246, 230, 32) 5 0.030303030303030304 0.0 161 2
rgb(70, 7, 90) 5 0.030303030303030304 90.0 59 184
rgb(103, 204, 92) 5 0.030303030303030304 0.0 131 282
rgb(33, 143, 141) 5 0.030303030303030304 0.0 146 270
rgb(72, 40, 120) 5 0.030303030303030304 0.0 61 167
rgb(192, 223, 37) 5 0.030303030303030304 0.0 183 63
rgb(49, 104, 142) 5 0.030303030303030304 0.0 192 280
rgb(105, 205, 91) 5 0.030303030303030304 0.0 51 47
rgb(38, 130, 142) 5 0.030303030303030304 0.0 2 117
rgb(71, 13, 96) 5 0.030303030303030304 0.0 193 16
rgb(139, 214, 70) 5 0.030303030303030304 0.0 107 369
rgb(149, 216, 64) 5 0.030303030303030304 90.0 17 206
rgb(99, 203, 95) 5 0.030303030303030304 0.0 107 128
rgb(39, 173, 129) 5 0.030303030303030304 0.0 164 133
rgb(49, 104, 142) 5 0.030303030303030304 0.0 148 4
rgb(103, 204, 92) 5 0.030303030303030304 0.0 138 59
rgb(37, 132, 142) 5 0.030303030303030304 0.0 143 1
rgb(122, 209, 81) 5 0.030303030303030304 0.0 21 284
rgb(50, 182, 122) 5 0.030303030303030304 0.0 39 383
rgb(149, 216, 64) 5 0.030303030303030304 0.0 181 99
rgb(69, 55, 129) 5 0.030303030303030304 0.0 91 223
rgb(178, 221, 45) 5 0.030303030303030304 0.0 189 313
rgb(42, 118, 142) 5 0.030303030303030304 0.0 119 218
rgb(192, 223, 37) 5 0.030303030303030304 0.0 153 52
rgb(70, 10, 93) 5 0.030303030303030304 0.0 156 11
rgb(78, 195, 107) 5 0.030303030303030304 0.0 137 93
rgb(66, 64, 134) 5 0.030303030303030304 0.0 52 299
rgb(62, 73, 137) 7 0.06060606060606061 0.0 136 168
rgb(42, 118, 142) 7 0.06060606060606061 0.0 68 32
rgb(108, 205, 90) 7 0.06060606060606061 0.0 52 233
rgb(41, 175, 127) 7 0.06060606060606061 0.0 165 43
rgb(33, 144, 141) 7 0.06060606060606061 0.0 186 17
rgb(37, 172, 130) 7 0.06060606060606061 0.0 192 210
rgb(33, 142, 141) 7 0.06060606060606061 0.0 62 236
rgb(37, 133, 142) 7 0.06060606060606061 0.0 32 57
rgb(53, 183, 121) 7 0.06060606060606061 90.0 84 276
rgb(70, 50, 126) 7 0.06060606060606061 0.0 2 338
rgb(246, 230, 32) 7 0.06060606060606061 0.0 174 13
rgb(70, 51, 127) 7 0.06060606060606061 0.0 163 199
rgb(35, 137, 142) 7 0.06060606060606061 0.0 21 9
rgb(129, 211, 77) 7 0.06060606060606061 0.0 129 100
rgb(88, 199, 101) 7 0.06060606060606061 0.0 179 135
rgb(37, 172, 130) 7 0.06060606060606061 0.0 132 15
rgb(62, 73, 137) 7 0.06060606060606061 0.0 59 304
rgb(57, 86, 140) 7 0.06060606060606061 0.0 167 65
rgb(63, 72, 137) 7 0.06060606060606061 0.0 154 203
rgb(71, 13, 96) 7 0.06060606060606061 0.0 130 35
rgb(76, 194, 108) 7 0.06060606060606061 90.0 73 203
rgb(31, 152, 139) 7 0.06060606060606061 0.0 40 297
rgb(36, 134, 142) 7 0.06060606060606061 90.0 47 383
rgb(42, 119, 142) 7 0.06060606060606061 0.0 52 162
rgb(41, 123, 142) 7 0.06060606060606061 0.0 111 230
rgb(37, 132, 142) 7 0.06060606060606061 0.0 116 321
rgb(39, 128, 142) 7 0.06060606060606061 0.0 66 296
rgb(122, 209, 81) 9 0.09090909090909091 90.0 41 207
rgb(33, 144, 141) 9 0.09090909090909091 0.0 126 328
rgb(31, 161, 135) 9 0.09090909090909091 0.0 189 107
rgb(70, 48, 126) 9 0.09090909090909091 0.0 184 46
rgb(99, 203, 95) 9 0.09090909090909091 0.0 89 188
rgb(50, 101, 142) 9 0.09090909090909091 0.0 135 133
rgb(34, 167, 133) 9 0.09090909090909091 90.0 138 230
rgb(160, 218, 57) 9 0.09090909090909091 0.0 147 64
rgb(205, 225, 29) 9 0.09090909090909091 0.0 59 53
rgb(72, 33, 115) 9 0.09090909090909091 0.0 175 48
rgb(41, 122, 142) 9 0.09090909090909091 0.0 116 269
rgb(64, 70, 136) 9 0.09090909090909091 0.0 167 93
rgb(253, 231, 37) 9 0.09090909090909091 0.0 137 194
rgb(42, 176, 127) 9 0.09090909090909091 90.0 129 155
rgb(71, 19, 101) 9 0.09090909090909091 0.0 6 5
rgb(194, 223, 35) 10 0.12121212121212122 0.0 90 3
rgb(38, 130, 142) 23 0.12121212121212122 90.0 41 254
rgb(205, 225, 29) 23 0.12121212121212122 0.0 178 338
rgb(42, 176, 127) 23 0.12121212121212122 0.0 3 147
rgb(37, 133, 142) 23 0.12121212121212122 0.0 159 339
rgb(74, 193, 109) 23 0.12121212121212122 0.0 72 23
rgb(108, 205, 90) 23 0.12121212121212122 0.0 54 1
rgb(40, 174, 128) 26 0.15151515151515152 90.0 89 300
rgb(51, 99, 141) 26 0.15151515151515152 90.0 1 361
rgb(38, 130, 142) 26 0.15151515151515152 0.0 31 7
rgb(210, 226, 27) 26 0.15151515151515152 0.0 1 213
rgb(39, 126, 142) 26 0.15151515151515152 0.0 172 198
rgb(46, 179, 124) 33 0.15151515151515152 90.0 15 332
rgb(213, 226, 26) 36 0.18181818181818182 0.0 1 37
rgb(64, 69, 136) 53 0.18181818181818182 90.0 64 359
rgb(142, 214, 69) 53 0.18181818181818182 0.0 100 1
rgb(197, 224, 33) 57 0.21212121212121213 0.0 139 245
rgb(39, 127, 142) 61 0.24242424242424243 0.0 89 131
rgb(200, 224, 32) 78 0.42424242424242425 0.0 137 16
rgb(129, 211, 77) 109 1.0 0.0 5 77