US Heart Disease Mortality Rate Visualization

Code is made available on Github, built as a data visualization project for UMass CS 590V Spring 2020 semester.
Interactive map visualization was a final project for a Data Visualization and Analysis class (COMPSCI590V) that I enrolled in while at University of Massachusetts. The work was done by myself, Dennis Shen, and Jon Moyer.
Programming Languages, Tools & Platforms

Demo




Methodology


The choropleth map visualization has been implemented using Leaflet JS, which is a lightweight, yet very powerful library for visualizing interactive maps. A ​tutorial​ of a choropleth map for visualizing population density across the United States was referenced, but the functionality was expanded to accomplish specific tasks and support respective functionality. Leaflet enables beautiful map visualization by binding a Leaflet map element to div element on a web page. Maps are enhanced by adding layers onto the underlying map that can be extended with additional functionality. Moreover, other html elements can be appended to the map such as radio buttons, dropdowns, and tooltips, as demonstrated during this project. The underlying map is returned from an API call to MapBox which host several different maps for specific needs.

Heart disease mortality rate data was made available from ​data.gov​ website, with the data being available in several formats. In this visualization, we utilize data in JSON format for easy interaction with Javascript. The data in this dataset is age-adjusted, spatially smoothed, and averaged over 3 years starting from 2015. The dataset is represented in a multi tiered format, with the top stratification representing heart disease mortality rate on the state level including all races and counties. The data is further stratified by providing mortality rate on the county level for all races and gender, while also offering further breakdown by race and gender. The different races that are recorded in the data are White, Black, Asian and Pacific Islander (APIA), American Indian and Alaskan Native (AI/AN), Hispanic, followed by Overall. Furthermore, the corresponding genders are Female and Male, followed by Overall. In certain cases, data was not available for combinations of race, gender, and county, which was handled accordingly by the visualization.

The actual data is stored as an array containing 60,000+ rows by 20+ columns. In our implementation, we reference the data portion of the Heart disease data by iterating through the array that was initialized using assignment: ​var json_data = heart_disease_data.data;.​ This allows us to consume all of the data in a linear fashion. In order to filter the data for specific tasks, we retrieve the mortality rate based on respective location stratification (state versus county), gender, and race.


Contribution


The interaction between map and supporting graphs was done by Rafal (me).

Dennis Shen implemented State/Country breakdown bar chart along with Population density scatter plot.

Jon Moyer implemented bar chart used for comparison between states.