I have spent a little time tweaking on the World Births/Deaths visualization. Screenshot is below. The visualization is available on googledrive here:
Showing Current Rates per Minute
Previously, a raw count of births and deaths was shown at the top of the lists. I have now added the dynamically calculated rate per minute for births and deaths. These are important summary numbers to surface. The dynamic values should generally settle down to about (about) 250 births/minute and 100 deaths/minute, but there will be some variability based on the underlying random values used for simulating births and deaths for a particular simulation.
Showing Countries with Most Births/Deaths
After each update (which occurs every second), the countries are ranked by the number of births and number of deaths. The top five countries for each are displayed in some available space near the respective lists (it is actually on a barely transparent white background, so that this can still be seen when the screen is smaller). Of course, the rankings should settle down to values determined by the (static) birth and death rates (I won't completely spoil it for you), but it is interesting to watch it get there.
|Updated Information now included: Dynamic rate per minute, |
list of countries ranked by number of births and deaths,
and additional dynamic detail on mouseover popup.
Visualization is Available at this Link
Additional Information in the Country Mouseover Popup
When you mouseover a country, a popup shows some basic summary information on the country for the current simulation. This information is dynamically updated as necessary while the popup is shown. The information includes the current number of births and deaths, as well as the ranking of these values across all of the countries included in the simulation (the ranking accounts for ties). In addition, detailed information on the time and location of recent births/deaths in that country is included and updated. I have always thought that the extra detail of a specific place adds depth to the experience of watching this visualization.
Translation to Other Languages
I haven't completed the implementation of this yet, but wanted to make a note of it. Google has a web site plug-in that can dynamically translate your site into a huge number of languages. Information on how to install and configure the short code required is here. What the plug-in does is add a dropdown box that lets any user change the language that they are browsing your site with. This is really really cool. I did some quick tests with this on the current visualization, and while it worked for the dynamically generated content, there was a slight lag in doing so that was a little distracting. What I think that I need to do is have all of the text statically defined somewhere that the translator will translate in one fell swoop, and then refer to these fields where it is currently generating text output. There might be some other tricks needed to get this to work smoothly.
Wrapping in a Chrome Packaged App
I have continued to update the Chrome packaged app that wraps this visualization. It uses a slightly different main page to deal with the (apparent) current limitations of using d3 in a Chrome packaged app. This (free) app is available on the Chrome app store here:
d3 is a Lightweight Heavyweight
While I think of it as a "d3 visualization", the fraction of code that is "d3" seems tiny. This has been a general pattern I have noticed for these things. d3 does a ton of cool work, but relatively few lines are usually required.