An interactive visualization of the exponential spread of COVID-19

A project to explore the global growth of COVID-19. Updated daily. Overview and motivations.
Champaign-Urbana Data Science User Group — Graph 6

Lesson #3: People love knowing about updates! I was skeptical if people cared about what was changing and improvements, but thousands of readers every day check the changelog every time it's updated:

    June 3

    • Modified the “align-right” labels to show off the right-side of the graph.
    • Modified labeling the “align-right” dates when two dates are extremely close (eg: June 1 and June 2).
    • Fix: US territories will now correctly highlight when “All States & DC” is selected.

    June 1

    • Fixed #46: “Y-axis scale to highlight, takes into account out-of-window data #46”

    May 27 - Cumulative Mortality Rate

    • Added “Cumulative Mortality Rate” to all graphs, allowing you to view the current mortality rate for every country/state.
    • Added “Test Positivity” to the normalized graphs (which is identical in display to the non-normalized graphs).
    • UI Fix: The display of “X Days Ago” should only show a whole number.
    • Redesigned the “Explore 91-DIVOC” box between the visualizations.

    May 26

    May 24 - Test Positivity Rate

    • Added “Test Positivity Data” to graph of US States.
    • Added a small note below the graph when all highlighted data appears only in the lowest 1/3rd of the graph to suggest scaling y-axis to highlight.
    • Changed default view of states to “US States” instead of “All” (hiding territories by default).

    May 22

    • Mobile-specific fix: Y-axis labels for values over 1,000,000 no longer get cut off.

    May 21 - Saving Image

    • Added “Save Current Image” to save the image as a PNG or SVG file.
    • Copy/Paste: Fixed “Direct Link w/ Your Options” link for countries with spaces in their name.

    May 19 - Easy Multi-Selection on Desktop

    • On Desktop (or any device with shift), a “shift-click” action will now add the country as an additional highlight.
    • Added this feature as small text on the bottom of non-mobile tooltips.
    • Added several options for “Show” on US state graphs.

    May 18 - Animation

    • Added an “Animation” button to animate the graph through the full data set.
      • Try it with “Y-Axis”: “Scale to Highlight” for a really interesting visualization!
    • Re-added the bottom of the tooltip showing geometric growth rates that was unintentionally removed yesterday.

    May 16+17 - Right-align by Date

    • Added “X-Axis” selection allowing you to select to right-align data by the number of days ago.
    • Added a light highlight for the most recent two weeks when viewing “right-align”.
    • Added a “Remove” option for additional highlights.
    • Highlights full data on mouseover/tap in addition to the tooltip.
    • Added “days ago” to the mouseover tooltip.
    • Removed trendline option from the UI.
    • Improved layout of “Data” selector by grouping data types together and adding dividers.
    • Added “New Hospitalized /Day” and “New Hospitalized /Day, 1 Week Average” as “Data” options for US States.
    • Added “New Recoveries /Day” and “New Recoveries /Day, 1 Week Average” as “Data” option for countries.
    • Browser-specific fix: Added dominant-baseline for label positioning on Firefox.
    • Mobile-specific fix: Added decimal point to non-exact y-axis labels (ex: “1k” -> “1.2k”).
    • Fixed various render failures and JavaScript errors related to selecting “(None)” as the highlight.

    May 12

    • Bugfix for day-of-week tooltip for iOS devices.

    May 11 - Weeks Matter

    • X-axis now shows gridlines at one-week intervals instead of intervals of 10.
    • Tooltip now shows day-of-week. (Suggestion by @tommyd_tech)
    • Fixed bug with being unable to highlight countries with <10 million population

    May 10

    • Improved scaling when choosing “Y-Axis”: “Highlight”
    • Improved error messages when data does not successfully load.
    • Fixed bug when calculating averages with 0 daily cases.

    May 6 — Cases per Day

    • Default view on the page is now new cases /day instead of total confirmed cases.
      • You can still view (and bookmark) the old default of “Total Confirmed Cases” by choosing that in the “Data”.
    • Added “Loading” animation between graph changes.
    • The chart titles now accurately reflect your chosen “Data” view.
    • Direct links shown on single-page visualizations (May 4th Update) now provide links to the single-page visualizations.
    • Scaling for “1 Wk. Avg.” graphs now scale to the one-week average data (before it scaled to the underlying, non-average raw data).
    • Several algorithm optimizations to speed up data processing.
    • Normalized country data now shows “Top 25 with over 10,000,000 population”.
      • You can still view all countries by showing “View”: “All” or selecting them as highlights, their data isn’t gone. :)

    May 4 — Individual Visualizations

    April 30 — Mobile Improvements

    • Greatly improved mobile display including axis labels, country text placement, and more.
    • Fixed “saved links” for daily and weekly averaged cases.
    • Changed default “Show” to 25 countries to reduce rendering time on phones/tablets. Custom links can be bookmarked to show all, 50, etc.

    April 24 — Hospitalizations and COVID-19 Tests for US States

    • Added four new “Data” selection for US states: “Hospitalized Cases”, “Total COVID-19 Tests”, “New Tests /Day”, “New Tests, 1 Wk. Avg.”.
    • The data from Johns Hopkins starts on Apr. 12, so the total graphs are a little uninteresting right now. However, I believe the trends will become interesting over time and the daily tests already show useful insights.
    • FIX: Fixed link to normalized charts.
    • UI Improvement: No longer displays a message of “(None)” having nothing to highlight.

    April 21

    • 1/3/7-day trendline is drawn for only seven days forward, not forever, to avoid extreme extrapolation.

    April 20

    • Upon changing any default values, a URL now appears below the graph with your saved options.
    • Bookmark or share the URL to go directly to the graph with your chosen options.

    April 17

    • Minor UI Enhancement: First “Highlight” option is now “(None)” to highlight no country/state.
    • UI Fix: Country/state labels were incorrect positioned on the newly added average graphs if the most recent raw data value was 0 (eg: 0 new deaths). Fixed and now appears correctly positioned.

    April 16 — One Week Average Cases/Deaths

    • Added two new “Data” options: “New Cases /Day, 1 Week Average” and “New Deaths /Day, 1 Week Average”.
    • Both options show a 7-day trailing average of the new daily cases/deaths, with detailed tap/mouseovers showing the the actual cases data and the trailing average data.

    April 15 — Overview Page

    • Added an “Overview” page documenting how the visualization was created, the motivations, and other bits.
    • Handled countries with no data gracefully and included message below graph when nothing is available to highlight.
    • Sorting on normalized “Top 10” / “Top 50” is now based on normalized data.

    April 13

    • Added “Show” option “Top 10” to show only the 10 countries/states with the largest values.
    • The “New {Cases|Deaths} /Day” now is based on the same start date as the “{Confirmed Cases|Deaths}” instead of being based on a /Day threshold.
    • Data points that are zero or negative are now rendered a data point below the x-axis when a country is highlighted to allow tap/mouseover interaction with the data. (Line charts still do not connect these points that are outside of the grid.)

    April 12 – Multiple Highlights

    • New UI “Add Additional Highlight” to allow highlighting any number of countries!
    • Changed default trendline to only show the original 35% trendline.

    April 11 – “Highlight Only” View (and Mobile Improvements)

    • The “Show” UI options has been redesigned, allowing you to “Show: Highlight Only” to view only one country.
    • All countries in the dataset are now listed in “Highlight” and the “Show” will move to “All” if needed when in “Top 50” view.
    • Several layout improvements specifically to remove some text overlap on mobile.

    April 10 – Dynamic Trendlines

    • Added logic to create dynamic trendlines from a highlighted country, allowing a visual indication of future progress at current growth rates.
    • Added new UI option “Trendline” to show the trend of the currently highlighted country.
    • By default, the original 35% trendline and a 1-week trend for the highlighted country are now displayed.
    • Redesign of trendline label positioning.
    • Various other minor UI tweaks to clean up the visualization with the display of trendlends.
    • Minor UI Improvement: In the normalized data charts the default scale was based off the largest value in the dataset before the data was filtered. Now, the default view is based off only the data displayed.

    April 9 – Axis Zoom

    • Changed the default (full) from being the next power of 10 to being 1.2x the maximum value.
    • Add new UI option “Y-Axis” allowing you to switch between the default (full) scale and a scale focused on your highlighted country/state.
    • Added (this) change log file.

    March 21 – April 8

    • Various updates.

New COVID-19 Cases by US States/Territories per Day

Loading Data...
Thanks!
https://waf.cs.illinois.edu/

Follow me on your favorite social media for updates on data + new visualizations:
Twitter: @profwade_
LinkedIn: /in/profwade
Instagram: @profwade
github: @wadefagen
Back to 91-DIVOC-01 >>