A Summary of Some of My Visualizations

The purpose of this page is to summarize in one place some of the interactive visualizations I have worked on. Most of these were built with d3.js, and all of them were javascript side projects I was simply interested in exploring.

It is one thing to read about there being about 4 births per second, and 2 deaths per second, but it is quite another to see how it may be playing out. This has appeared in The Atlantic and The Atlantic Cities, and was recognized in July 2014 by PCWorld.com as one of "10 sites with stunning visual data that will change your world view." The visualization also helps you realize just how big the world is (collaboration with Bill Snebold).

This is an interactive visualization that load your own family tree from a GEDCOM file, or load one of several samples (including the British monarchy and its demonstration of pedigree collapse). Since the people are placed on the timeline based on birth year, you can see the staggering in time of generations.

You can also have it use flags based on a person's birth place, and have it highlight potential immigrants to the USA, which can be tedious to locate even in relatively small trees.

A summary of many of the features of the visualization is available in this blog post.

This visualization uses an api written by Matthew Rothenberg as part of his emojitracker project (http://emojitracker.com/) that provides real-time counts of the uses of emojis in tweets. The visualization displays the emojis in an Archimedean spiral that updates based on the real-time changing popularity of emojis (although the set of top emojis is fairly constant).

What started off as simply an experiment in viewing the popularity of birthdays evolved into an interactive visualization that lets you see the popularity of "conception days", as well as be able to explore when the conception day was for a given birthday.

When shown an image, there are some visual properties that we can
detect effortlessly and almost instantaneously - they "pop out."
These are referred to as preattentive attributes, and knowing about
them can be useful for creating more effective visualizations.
This visualization actually consists of more than 30 different
interactive visualizations that let you explore different preattentive
attributes.

The probability of living to a certain age, given that one has lived to one age, is calculated based on the 2010 "period life table" from http://www.ssa.gov/oact/STATS/table4c6.html. There is a separate table for males and females. Some more technical notes on this visualization are in this blog post.

The purpose of this evolving project is to play with different ways to explore the activity for bills introduced in the Tennessee General Assembly. The datasets upon which this is based are from Legiscan, where "weekly snapshots of current sessions are created each Sunday morning with updated information."

We all kind of know there's a tiny chance of winning the lottery. This visualization gives some perspective on how that tiny chance translates to when you might expect to win, if you played twice a week.

What's it like to see money go by in real-time for a given salary, for an hourly rate? How much is that meeting costing somebody in real-time? What about the US budget? The total salary of Congress and the executive branch? Someone on minimum wage? This visualization lets you see.

You can drag bars around or drag inside the textboxes to change the various parameters. In addition, the underlying equation for the probability density function for both the lognormal and the underlying normal distribution is rendered via the beautifully rendering MathJax mathematical typesetting library.

This is a series of interactive visualizations to help provide insight into how QuickSort works, currently culminating in the breakthrough dual partitioning method due to Vladimir Yarovslavskiy in 2009 that has since been incorporated into the Java 7 runtime (in collaboration with Jon Bentley and Joshua Bloch).

For each visualization, there are relevant annotations that are shown as the sorting/partitioning progresses.

You can add/edit/delete links, see details on the relevant matrix calculations and how they are related to the links themselves, and watch the intermediate steps in the convergence of the algorithm to arrive at the ultimate PageRank values.

Inspired by Ted Dunning's work, this visualization lets you watch and interact with how so-called Bayesian Bandits work. This approach is among those being used for determining which ads to use on internet sites, as the rankings of ads can be updated in (essentially) real-time based on click-through rates.

This visualization is intended to provide some insight into how recommender systems work. There can be a lot
of matrix algebra with these things, and so all of the relevant matrices are shown, with mouse-over activated
highlighting showing how the parts are connected.

Note that this visualization does not address some of the fancier ways of ranking items, such as by the LogLikelihood ratio - see
this talk by Ted Dunning for a some more info on that. Rather, this visualization shows how you go from a file that contains the interactions between users and items, to the ultimate recommendation weights for a new user who has interacted with some of the items.

In February 2015, the internet went crazy over the
ambiguous colors of a dress. The original question about it is here. Some people see it as blue and black, and some people see it as white and gold.

This simple tool lets you determine what "level" your blue/black or white/gold is - it varies by person.

Not included here but was fun to make and interesting to watch (both done with Bill Snebold) - an app to search and view Vines ("VineFinder"). This stopped working when twitter made good on their threat to remove the (essentially unlimited, as far as I could tell) non-authenticated search api. The new api required authentication (which is not a problem), but was severely rate-limited (which is a problem, based on how the searches were made across the US by latitude/longitude so as to get adequate coverage).
If you visit this app site now, you'd get a very quiet screen, as the backend of the app is sadly sending out its search requests dutifully, but receiving nothing back from twitter but HTTP 410 Gone: "The requested resource is no longer available at the server and no forwarding address is known."

Putting all of these visualizations together forced me to learn more about javascript than I had known was there, and alas I feel there is so much more to learn. What a curious thing, given my insufficient respect for this language just over a year ago.

The purpose of this page is to summarize in one place some of the interactive visualizations I have worked on. Most of these were built...

"When you start on your journey to Ithaca, then pray that the road is long, full of adventure, full of knowledge... Always keep Ithaca fixed in your mind. To arrive there is your ultimate goal. But do not hurry the voyage at all." (from "Ithaca", by C. P. Cavafy)