Illustrative Malaria Dashboard

Visualising artificial case data, model results, and environmental factors.

Python Plotly Dash Pandas AWS Lightsail

Project Overview

Dashboards for visualising data and modelling outputs were incredibly helpful throughout all stages of our project on malaria in Vietnam. To name just a few reasons: enhanced data exploration/interrogation, simultaneous spatial and temporal visualisation, finding patterns by switching on/off different variables or subsets of data, and for communicating results. To highlight this, I wanted to demonstrate how useful such tools can be by hosting a similar dashboard with artificial data. I must make it very clear: this data is not actual case data. I simulated some data using some basic assumptions about transmission dynamics. I will explain the behind-the-scenes of this process in a blog post.

Beyond just providing a better understanding and communication of the data, the dashboard made two insights blatantly obvious (which might have been a bit obscure in raw data tables):

  1. There is environmentally driven seasonality in Plasmodium falciparum receptivity.
  2. We must be careful about sampling bias.

While (1) was to be expected, our ability add or remove different combinations of environmental variables to the time-series figures allowed for a much easier exploration of this relationship. Moreover, it was gratifying to see that our modelled estimates for receptivity seemed to be closely correlated with factors thought to drive transmission (e.g. rainfall). We identified (2) because it was immediately clear that data/samples was/were not uniformly distributed in space and time. In fact, the self-exciting nature of tranmission meant our samples depended directly on the quantities we were trying to estimate!

Technical Implementation

Backend

  • Python dash for the web framework
  • Pandas for data manipulation and analysis
  • Geopandas for spatial data and objects

Frontend

  • Dash for interactive components
  • Plotly for data visualization

Hosting

  • AWS, Lightsail for hosting the application

Interactive Demo

Below is an embedded version of the dashboard:


As an additional reminder, the data shown is artificial and not based on real case data.