/covid19-map

Primary LanguageJavaScriptMIT LicenseMIT

Open COVID19 Map πŸ¦ πŸ˜·πŸ—ΊοΈ

About

Hi, I'm Daniel Karl πŸ™‹πŸ»β€β™‚οΈ

I wanted to see whether I can reproduce the Johns Hopkins map visualization of COVID19. Therefore I set out to build my own version πŸ‘¨πŸ»β€πŸ’» using the very same live data source that they kindly provide in their GitHub repo πŸ™πŸ».

Thanks to the already available data set the process of ramping up a visualization tool in React went fairly smooth ☘️. Since then, https://covid19map.io is getting more and more features:

  • project the confirmed cases at global average testing rate 🌍πŸ§ͺπŸ‘©πŸΎβ€πŸ”¬
  • display the momentum of the spread πŸ¦ πŸ“ˆπŸ—ΊοΈ in glyphs directly, i.e. change over the last 1, 3 or 7 days
  • containment score πŸ‘πŸ˜·πŸ“‰ reflecting the spread of COVID19 in a region, based on weighted average growth of confirmed cases over the past 1, 3 and 7 days.
  • replay mode 🎟️πŸŽ₯🎬 to go back in time (also works in momentum mode)
  • works with Johns Hopkins data version 1 and 2 (they changed their format on 03/23/2020)
  • normalize data by population πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦πŸ“ŠπŸ‘«
  • is open source ⭐😍πŸ₯°, therefore allows other researchers πŸ”¬πŸ§‘πŸΎβ€πŸ”¬πŸ§¬ to study this source code and contribute more features

Please check it out, and hopefully it helps to drive more ideas and to provide a better understanding of the situation we are currently facing. We are all in the same boat β›΅ help each other ❀️ stay healthy!

If you want to contribute a feature I will roll out your pull request timely and add your name here.

Users

Visit https://covid19map.io

Developers

Install and run

npm install         # first time only
npm start

Deploy to GitHub pages

npm run deploy      # Please do not forget to include link to license and mention the original author(s) as given below

Data model

With:

  • $dataset = this.state.datasource.datasets[$idx] // 1 per day
  • $data = $dataset.data[$locationName] // 1 per location
  • $value = {confirmed|active|recovered|deceased|projectedConfirmed}

Then:

  • $data.absolute.current[$value]
  • $data.absolute.growthLast1Day[$value]
  • $data.absolute.growthLast3Days[$value]
  • $data.absolute.growthLast7Days[$value]
  • $data.ppm.current[$value]
  • $data.ppm.growthLast1Day[$value]
  • $data.ppm.growthLast3Days[$value]
  • $data.ppm.growthLast7Days[$value]
  • $data.containmentScore

Further:

  • $dataset.totalConfirmed
  • $dataset.totalRecovered
  • $dataset.totalDeceased
  • $dataset.totalActive
  • $dataset.totalConfirmedProjected
  • $dataset.cameraCoordinates // for theatre mode

Contributors

  • Daniel Karl πŸ‘¨πŸ»β€πŸ”§
  • Michael Baentsch πŸ‘¨πŸ»β€πŸ«

Attributions

Software dependencies

Data sources