There is a need not only to visualize the COVID data but also to process the data. The general public has difficulty with interpreting the data. Concepts like exponential growth are not well understood. We want to create a dashboard that shows you the standard map view with the confirmed infected cases and also helps the user to insert the data and visualize it with different graphs to get an intuition for the data.
What it does
We provide a map view to see the confirmed infected cases around the world quickly. We created a tab to allow the user to filter the data and graph it. The graphs, to start, run a linear regression on the data to help the user visualize the potential for future infections. We add a tab to help the user visualize exponential growth and which countries have successfully stopped such growth and which ones have not.
How I built it
We used Jupyter Lab and Python to prototype the code quickly. We then create an importer using OpenFaaS. The OpenFaaS function pulls data from a different source and uploads the data to Elasticsearch databases. The function was code in Python and quickly deployed into Google Cloud Kubernetes Cluster. The Elasticsearch Databases and Jupyter Hub have also been deployed into the same Kubernetes Cluster. The dashboard code, after tested in Jupyter notebook, was moved into the Dash web app. Dash web app was coded in Python. Dash is built on top of React. We created a Docker container for Dash and Helm chart to deploy it into the Kubernetes cluster. Once deployed, the dash dashboard reads data from the Elasticsearch database. The analytics for the graphs have been created with the SicKit-Learn ML framework. We use Slack for ChatOps, to get feedback from the data importer and the Kubernets system.
Challenges I ran into
The data is the biggest challenge here. Trying to get a good source of data and a data that is published on regular basis. We tried many different data source. We also tried scrapping data from websites.
Accomplishments that I'm proud of
I'm proud that our team has almost infinite skill set in almost all the technologies.
What's next for COVID-19 Dashboard
We are currently working on a research portal that will make 44000 research paper on COVID available to the public. We are in the process of indexing the data and we will submit a new project here soon.
Try It out
dash, docker, elasticsearch, helm, jupyter, kubernetes, openfaas, plotly, python, react, scikit-learn