With open source tools from Python Dash and data from worldometers.info and John's Hopkins University, I've created an interactive web-app dashboard for Covid-19/Coronavirus time series and demographic data.
Data Views include line and scatter plots, as well as the raw data table. All charts are interactive, with features such as hovering on lines and points for more data, zooming, scrolling, and selecting data features. Charts can be toggled between linear and exponential plotting, as well as cumulative, daily increase, trajectory, and "development since x
number of cases" views.
Requires Python 3.5+
pip install -r requirements.txt
python app.py
open http://127.0.0.1:8001/
If running for the first time, you must fill the cache of worldometer.info data. To manually update this:
python -m model.worldometer
.
├── README.md
├── requirements.txt
├── app.py // the main app/controller
├── assets // CSS styling and "about" text files
│ ├── about.md
│ ├── about_line.md
│ ├── about_scatter.md
│ ├── favicon.ico
│ ├── s1.css
│ └── styles.css
├── model // all data and processing logic
│ ├── __init__.py
│ ├── country_iso.py
│ ├── cssegisand_data.py
│ ├── utils.py
│ ├── worldometer.py
│ └── worldometer_*.csv
└── view // the app layout/view
├── __init__.py
├── line_graph.py
├── scatter_plot.py
├── table.py
├── title.py
└── utils.py
units and general data is not available on hover of the line or scatter chart (only raw x, y values)
zooming is auto-refreshed on hover for all charts