Symbol-driven Kelly Plot

(* Symbol Driven Kelly Plot *)
Off[General::spell];
Off[General::spell1];
col = 10; (* number of columns *)
b = 10; (* number of bins = number of colors *)
dlst = {};
(* paste the data between the {} in dlst = {}, comma separated numbers, 1 through b *)
lngth = Length[dlst];
Do[rs[i]=Rectangle[{Mod[i,col],-Floor[i/col]}, {Mod[i,col]+1,-Floor[i/col]-1}], {i,0,lngth-1}]
(* This defines the array of boxes *)
color[1]=RGBColor[1,0,0];
color[2]=RGBColor[0,1,0];
color[3]=RGBColor[0,0,1];
color[4]=RGBColor[1,1,0];
color[5]=RGBColor[1,0,1];
color[6]=RGBColor[0,1,1];
color[7]=RGBColor[.5,0,0];
color[8]=RGBColor[0,.5,0];
color[9]=RGBColor[0,0,.5];
color[10]=RGBColor[1,1,1];
(* Here are 10 assigned colors - add more if you want more than 10 bins *)
Do[c[i]=color[dlst[[i+1]]], {i,0,lngth-1}]
cList={};
Do[AppendTo[cList,{c[i],rs[i]}],{i,0,lngth-1}]
Show[Graphics[cList],AspectRatio->((Floor[lngth/col]+1)/col)]