I wrote a visualization of the populations of the largest cities in the US over the years. I got the idea when I was in Detroit in the summer, and read about the huge decline in Detroit's city population since the 1950s when the automotive industry was at its peak. According to Wikipedia's Shrinking cities in the USA page, Detroit has declined by 61.4% from its peak population. This is a decline of over 1 million, which makes it the largest decline among US cities in absolute numbers, but not in percentage terms since St. Louis has a slightly higher percentage decline (62.7%, or 537,502 people).
These figures are all for city populations, not for the greater urban or metropolitan areas, which, in the case of Detroit, have both significantly increased in size since the 1950s. Detroit has therefore seen one of the largest population shifts to the suburbs since the middle of the 20th century. Much has been written on the dramatic decline of Detroit's city population, and the impact on life there. These are some pieces that I found interesting:
- For more information on Detroit's history, particularly its buildings, I highly recommend Dan Austin's http://historicdetroit.org.
- The Guardian has an amazing photo gallery of some of Yves Marchand and Romain Meffre's pictures of Detroit in ruins.
- How to Bring Detroit Back From the Grave by Josh Harkinson, Mother Jones.
- The Maker Culture is Reinventing Detroit by Gina Clifford, Wired.
- We didn't get to see it, but a friend highly recommended the heidelberg project, a street art project.
- Eliane on our visit: A journey into the past: Detroit in words
How I wrote the visualization
I used the wonderful d3 library to write the visualization, combining elements of the Population Pyramid example with an updating bar chart. The documentation on Object Constancy was critical to getting the visualization to work.
The population data is from the US Census Bureau, although I found the actual files linked from Wikipedia's Largest cities in the United States by population by decade. I had to write some simple scripts to turn the source data into CSV files that d3 could read.