Looking at Diwali sales this week. Diwali is all about lights so I decided to represent the data in a thematic way.
I made a chart that is similar to a tile chart but with light globes instead. For an extra touch, I represented the number of purchases made by men and women in the filament of the globe.
To create the globes it was going to be easiest to construct a data frame with the coordinates to draw and globe and use geom_bspline0 from {ggforce}. I could have just manually put in the coordinates instead, I mapped out the location of the points in Google Sheets. I then read the points into R. This made it easier because I could visualise what the globe was going to look like and tweak if needed.


I did something similar for the mount for the globe.
To represent the total sales by zone and category I considered sales representing the weight of the globe. More sales would mean a heavier globe and will hang lower in the line. I initially also tried to make the globe larger but it didn’t look that good.
Getting the filament and numbers right was a bit fiddly but time well spent. I like how it turned out.
Code 👉 Github
