CensusMapper App: Mashup Census Data With Bing Maps

CensusMapper is a Windows 8 app that retrieves U.S. Census Data using the recently released Census API and displays that data on a map using Microsoft’s Bing Maps API. The application is built using XAML and C#. The intent of this version is to establish a proof of concept as well as introduce a design and user-experience direction to be explored and evolved going forward.

Upon startup, the app retrieves the population counts for each U.S. State and displays those counts in a marker positioned in the geographic middle of each state.

CensusMapper - Initial View

The user can zoom and pan to locate points of interest. When the user taps or clicks on a point of interest, the app determines the geo-coordinates of the selected location, makes a Bing API call to get the address information for that geo-coordinate and then makes a Census API call to get the population count for the zip code in which that geo-coordinate is contained.

CensusMapper - Showing points of interest

The data is displayed using custom ControlTemplates created using XAML. There are two custom ControlTemplates in this version: one to display the state counts and another one to display data about the user selected points of interest. The ControlTemplate allows complete control of the layout and display of information obtained from Census API, including embedded graphics, tables and charts.

The app uses the async/await keywords introduced in .NET Framework 4.5 to create a responsive user experience.

The current version of the app retrieves and displays only total population count for states and selected locations. However, the census API provides access to a rich set of data that can be obtained by making further enhancements to the app. The source code for this version of CensusMapper is available on GitHub.

Census API was released in July 2012. The API exposes data from the census surveys conducted in year 2010. You can get more information about the API from U.S. Census Bureau website.

More information about the data sets exposed by the census API can be found here:

About Ash Tewari

Ash joined AIS in May 2012 as a Senior Software Engineer. He has a Master’s of Science in Engineering from Auburn University and a Bachelor’s in Technology from Regional Engineering College in Jalandhar, India. He is passionate about creating software and finding ways to improve his craft. For more than a decade, Ash has built software components, applications and frameworks encompassing desktop and web clients, middleware components and databases. He enjoys sharing his knowledge and perspectives with the community by participating in user groups, presenting in code camps and via his blog (http://www.ashtewari.com/). Ash likes to read, watch movies and get out in the mountains for backpacking and hiking.