Jun 27, 2017
Visualizing Sorting Algorithms in Color
Different Color Spaces There is no correct way to sort a list of colors. Every color can be mapped to a vector in a three-dimensional space. In other words, each color is defined by three unique numbers. There are competing models for representing this space in Computer Science. Probably the...
Jun 10, 2017
Mapping the Metro in Washington, D.C.
Labels Pause How I Made This Map I was inspired by this map online to create a similar map of the Washington, D.C. metro system. The map of the subway system plots stations with uniform spacing, often placing them in a straight line, improving map readability but distorting the size...
May 29, 2017
Determining the Best Time to Post on Instagram
I recently argued with a friend about the best time of day to post on Instagram to maximize the number of likes on a given picture. We agreed that people view Instagram most frequently in nighttime hours, from around 8 to 11 PM. I posited that the best strategy was...
Dec 23, 2016
Recreating the Star Wars Opening Crawl With Trigonometry and CSS
With all the recent news about Rogue One, I wanted to pay a tribute to the Star Wars franchise. One interesting change I noticed in the new movie was a lack of scrolling introductory text before the beginning of the film. This sparked me to do research on the signature...
Dec 5, 2016
Creating Traveling Salesman Art With Weighted Voronoi Stippling
Imagine you’re planning a road trip across the United States. You pick thirty different cities to visit during the trip and have no preference on order. A question arises: what is the shortest possible trip that visits each city once and finishes home? And the problem is more complicated than...
Oct 1, 2016
Largest World Cities Over Time
I recently created this interactive map of the largest city at any point in time in world history. I used DataMaps to make the plotting easy and obtained the data from Professor Ian Morris via this Wikipedia article. Some cities' historic names were changed to current ones so as to...
Aug 5, 2016
Using K-Dimensional Trees to Optimize Animation Performance
Many animations appear simple but actually require complex calculation on each frame. This week, I worked to simplify an animation algorithm using a data structure called the k-dimensional tree. To demonstrate k-d trees, I created an HTML canvas visualization of a nearest-neighbor search. The animation involves a group of nodes...
Jul 7, 2016
Valuing the Expected Salaries of NBA Players
I’ve always wondered what it would look like if one were to calculate the money a professional athlete deserves based on their production. The other day, Reddit user /u/aeisenst posted a rant that mentioned how a player’s productivity can be viewed as the number of wins they generate for their...