Interactive Scatterplots of Census Data Using ggvis

Interactive Scatterplots of Census Data Using ggvis
(This article was first published on » R, and kindly contributed to R-bloggers)

Today I finished two projects that had been on my mind for a while:

  1. Try out ggvis, the interactive successor to ggplot2
  2. Create interactive scatterplots of census data

You can see the resulting shiny app here. The app lets you create a scatterplot of any pair of demographic variables that ship with the choroplethr package. When you roll over a point, it tells you where it is. It also adds a trend line.

Here are some examples. Note that while the graphics in the app are interactive, these images are static.

State Race vs. Age

As states get whiter, they also get older:


County Age vs. Income

As counties get older, they also get wealthier:


ZIP Race vs. Age

As ZIP Codes (ZCTAs) get more hispanic, they tend to get younger:


Here are some fun facts I learned from the app:

  • Vermont and Maine are the oldest and whitest states
  • Sumter County, Florida is the oldest county, with a median age of almost 65
  • Manhattan (technically New York County in New York State) has the highest per capita income

After spending some time with the app I now have a lot less confidence in the ZIP data than I used to – too many ZIPs have a median age below 10 or over 90. Presumably that could be addressed by looking at the error bars of the underlying data (a major purpose of the acs package). That just wasn’t the purpose of this project.

The code for the app is available here.

If you see any interesting correlations or outliers, please comment below! I’m also interested in learning about more options for interactive graphics in R. If you know of other libraries for doing similar work, please also leave a comment as well.

Subscribe and get my free email course: Mapping Census Data in R!
100% Privacy. We don’t spam.

The post Interactive Scatterplots of Census Data Using ggvis appeared first on

To leave a comment for the author, please follow the link and comment on their blog: » R. offers daily e-mail updates about R news and tutorials on topics such as: visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more…