John Snow's Map Pedro Borges

This Shiny App was developed to showcase how John Snow might have used the data that he collected on the 1854 London cholera attacks if he had access to modern technology. This visualization provides a summary of the historical events that motivated John Snow coupled with graphics in a dashboard that allow the reader to explore the spatial and demographic data collected and draw their own conclusions about what happened during the 1954 outbreak. It also provides an overview of the UK's 1851 census to as context.

A video tour of the visualization is available on youtube.

The Data

All of the data used in to develop the plots and maps in this project are available at

The data includes:

  1. Records of cholera deaths and attacks during this epidemic
  2. Demographic summary of the afflicted
  3. Location of water pumps
  4. Location of attacks and deaths
  5. 1851 UK census
  6. JPEG of John Snow's map


Example of geographic distribution of cholera deaths

The Code

How to run the code locally:

  1. Install R and RStudio
  2. Download the source code
  3. Unzid the folder into an empty directory
  4. Open app.R with RStudio
  5. Download the necessary libraries listed using the command install.packages("LIBRARY NAME")
  6. Push the "Run App" button

The following libraries are necessary to run this visualization: shiny, shinydashboard, ggplot2, DT, jpeg, leaflet, reshape, rgdal, RColorBrewer and ggrepel


Example of a dashboard tab

The Proof is on the Maps

The strongest evidence supporting John snows claim that cholera outbreaks were caused by contaminated water was in the maps. Below it is obvious how the deaths are concentrated around a central pump, on Broadway and Lexington, which was later found to be contaminated.


How the deaths would look in modern London

Another important evidence was the lacks of deaths at the work house, which had its own water source