Awesome
Covid 19 Interactive Dashboard
Read blog post on my website, covering how we built this! And, don't forget to leave a star ⭐!
About
Coronavirus disease (COVID-19) is an infectious disease caused by a newly discovered coronavirus. At this time, there are no specific vaccines or treatments for COVID-19. The best way to prevent and slow down transmission is be well informed about the COVID-19 virus. who.int
The goal of this project is not to build just another dashboard. But, to focus on collaborative plot ideas, and a mobile friendly UI/UX. Feel free to open an issue requesting a type of plot, table, or any feature for that matter. Join the repo's Gitter chat.
Getting Started
Prerequisites
- Python; pyenv recommended
- Pip
Installing
Get the project up and running locally in just 5 easy steps.
-
Create a personal Fork of this repository.
-
Clone the fork with HTTPS, using your local terminal to a preferred location, and cd into the project.
git clone https://github.com/your_username/covid19-dashboard.git
Cloning into 'covid19-dashboard'...
remote: Enumerating objects: 113, done.
remote: Counting objects: 100% (113/113), done.
remote: Compressing objects: 100% (80/80), done.
Receiving objects: 100% (2845/2845), 12.52 MiB | 5.21 MiB/s, done.
cd covid19-dashboard/
- Create your virtual environment, and activate it.
python -m venv env
source env/bin/activate # Linux/Mac
env/Scripts/activate # Windows
- Install dependencies
pip install -r requirements.txt
- Run local server, and DONE!
python manage.py runserver
May 06, 2020 - 11:22:23
Django version 3.0.6, using settings 'core.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Deployment
Heroku app is already configured to this repository for automatic deploys from any push to the master branch. Create a pull request containing your respective changes and wait for merge.
Reading data locally
You can go through all the available datasets by going into the /processdata
directory, launching a interactive python shell, importing getdata
file, and calling any function. See below...
cd ~/repos/covid19-dashboard/processdata
$ python
Python 3.7.6 (default, Jan 8 2020, 20:23:39) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
...
>>> import getdata
>>> getdata.realtime_growth()
Confirmed Deaths Recovered
Date
1/22/20 555 17 28
1/23/20 654 18 30
... ... ... ...
8/2/20 18079723 689362 10690555
8/3/20 18282208 693694 10913000
[195 rows x 3 columns]
Built With
- Django Django is a high-level Web framework that encourages rapid development and clean, pragmatic design.
- Plotly The leading front-end for ML & data science models in Python, R, and Julia.
- Appseed
- Bootstrap
Data Sources
- Johns Hopkins University: CSSE 2019-ncov data repository, found here.
- Our World in Data: OWID GitHub Data repository, found here.
- New York Times' COVID GitHub data repository, found here