Skip to content

A visual analytics dashboard for Covid built using Dash and Plotly.

Notifications You must be signed in to change notification settings

jacobceles/covid-viz-hub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Covid Viz-Hub

According to WHO, as of December 2020, COVID-19 had infected over 82M people and killed more than 3M worldwide. The economic and social disruption caused by the pandemic is devastating: tens of millions of people are at risk of falling into extreme poverty, while the number of undernourished people are currently estimated at nearly 690 million. We need ways to help people assess the risks involved, and understand what is happening around them.

In this project, we built visual displays, which will help users gain the information needed to act, helping them take better, informed decisions. We have used the COVID-19 data provided by The Center for Systems Science and Engineering (CSSE) at JHU, as well as the COVID-19 Case Surveillance Public Use Data with Geography provided by CDC. Dashboards have become the iconic interface through which we understand the coronavirus pandemic, and hence we have also built a dashboard using Plotly and Dash. The dataset itself is open for public use and holds information since 2019.

Features

Here are some features of this implementation:

  • Transparent: Shows the data being used.
  • Developed an ETL pipeline to load data directly from the true source.
  • A full-fledged dashboard built using Dash and Plotly for visual analytics.
  • Implements various stages such as cleaning, transforming and integration.
  • Uses SEIR to predict the trend based on factors like lockdown, vaccinations etc.
  • Comparative Analysis on different levels: Global (Continent), US, and Individual.

Problem Statements

Global Level

  1. Latest death count across continents
  2. Compare monthly deaths of countries
  3. Death count across months for different continents
  4. Spread of coronavirus across the world over the year?
  5. Trend of deaths across months for different continents
  6. Recovery rate of Coronavirus across the world over the year?
US Level
  1. Progress of covid deaths across states
  2. What was the situation in local hospitals like?
  3. Situation across different periods of the outbreak
  4. Which provinces accounted for the greatest number of deaths?
  5. Comparison between states based on percentage of deaths in each state?
Individual Level
  1. Which race has the most deaths?
  2. Which gender has the most deaths?
  3. Which age group has the most deaths?
  4. Was underlying condition a major factor in the deaths occurred?
SEIR Model
  1. Predict the trend based on factors like lockdown, vaccinations etc.

Installation Procedures

  1. Clone the repository to your local machine.
  2. Start your local instance of SQL.
  3. If needed, update your URLs at:
  4. Run backend/main.py to run the backedn ETL pipeline.
  5. Once done, run frontend/index.py to get a link for the WebApp.

Sample Data

Sample data can be found in this folder.

Implementation

High Level Design

Folder Structure

├── backend                                 # Holds the backend code (ETL)
│   ├── data                                    # Holds sample data for reference
│   ├── functions.py                            # Holds various functions used for cleaning & transfomring the data
│   └── main.py                                 # Entry point for the backed process; Run this to execute the end-to-end ETL piepleine
├── Documents                               # Holds info about the project
├── frontend                                # Holds the frontend code (Dash and Plotly)
│   ├── apps                                    # Holds static files associated with the dashboard
│   │   ├── __init__.py                             # Used to define as a package
│   │   ├── global_layout.py                        # Layout for global page
│   │   ├── home_layout.py                          # Layout for home page
│   │   ├── individual_layout.py                    # Layout for individual page
│   │   ├── SIERmodel_layout.py                     # Layout for SIER page
│   │   └── us_layout.py                            # Llayout for US page
│   ├── assets                                  # Holds the image files used in the dashboard UI
│   ├── app.py                                  # Application file which defines the app settings
│   └── index.py                                # Dash application which defines and triggers the endpoints; Entry point for the dashboard
├── README.md                               # Read this first
└── requirements.py                         # Required packages to run the frontend and backend

Output

A full video demo of the UI can be viewed in the YouTube Video (redirects to YouTube).

Screenshots

Home Page Home Page Home Page Home Page Home Page Home Page Home Page Home Page Home Page Home Page Home Page

Contributors

About

A visual analytics dashboard for Covid built using Dash and Plotly.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages