Loading Data . . .
Loading the Remaining Country Data...
Instructions
About
This application allows you to plot a timeseries of COVID-19 cases for every country in the world that is providing data for comparison with other countries. You can also compare time series for states and provinces in the United States, Canada, and Australia. The dashboard charts currently do not support plotting individual territories such as Puerto Rico or the Virgin Islands, but time series data for all world territories can be plotted using the map.
Default Screen
The application pre-loads itself with time series of the currently "hottest" countries/states of interest. See the "Data Info" tab for more information.
Screen Size
While the application is optimized for screens of all sizes, you will have the best results viewing it on larger screens, such as a tablet or computer. If you are using a phone or other small screen, I recommend tilting your device into landscape mode.
User Interface
The user interface consists of three areas:
- Plot: The plot is fully interactive. Hover your mouse arrow over a data point to see the state/country and the COVID-19 case count for that day.
- Country/State Selector: Use this area to add and remove countries/states to and from their respective plots.
- Clear Plot Button: Use this to clear all data off of the plot and start with a blank chart
- X Axis Parameter: Plot Data on the X-Axis using either the calendar date or the number of days since the 100th confirmed case.
- Y Axis Scale: Plot Data on the Y-Axis using either a linear or logarithmic scale.
- Plot Data: Select which dataset you wish to plot. Available datasets include Total Cases, New Cases, Total Deaths, and New Deaths.
- Moving Average: On plots where new daily cases or deaths are plotted, select the number of days over which to calculate the moving average. The moving average removes noise and smooths the curve.
Adding Data
- Locate the Country or State Selector underneath the chart. You may need to scroll down to see it.
- On the Plot By State tab, click on a country to reveal a list of states or provinces.
- Check the checkbox next to the name of the state or country you wish to add to the plot. You can also click on the name of the state or country to check the box.
- The state or country's time series will automatically be added to the plot when you check the box.
Please note that data is only plotted if the country/state has 100 or more cases. If the country or state currently has less than 100 cases, you'll see a single dot appear on the y-axis. If the country has no data, nothing will appear on the chart. Most countries are reporting data, but not all.
Removing Data
- Locate the Country or State Selector underneath the chart. You may need to scroll down to see it.
- Uncheck the checkbox next to the name of the state or country you wish to add to the plot. You can also click on the name of the state or country to uncheck the box.
- The state or country's time series will automatically be removed from the plot when you uncheck the box.
Change the X-Axis Parameter
In the "X-Axis Parameter" dropdown menu, select either Calendar Date or Days Since 100th Confirmed Case for the X-Axis.
Change the Y-Axis Scale
In the "Y-Axis Scale" dropdown menu, select either Linear or Logarithmic scale for the Y-Axis.
Change the Dataset Being Plotted
In the "Plot Data" dropdown menu, select the dataset you wish to plot.
Clear All Data From the Plot
To clear all data from the plot and re-start with an empty chart, click on the "Clear Data" button, which is directly underneath the chart, on the right hand side.
Reset Plot to It's Initial Setting
To reset the plots to their original settings (with the currently "hot" cities/states), simply refresh your browser window, or press Control+R (Command+R on Mac OS).
Printing the Plots
The application is optimized so you can print the chart or text that's in the currently open tab. I'm hoping to add the ability to print both the country and state charts on one page in a future update.
Color Schemes
The time series lines on the countries chart are colored using either the primary or secondary color on that country's flag.
I tried using the state and provincial flags as a color scheme for the state chart, but it seemed like every one was either red or dark blue. For those states in the US and Canada, I used the colors of a sports team (either college or professional) that calls that state or province home.
The Sports Team Color Game
Can you figure out which teams' color schemes I used on the state plot? I'll start you off with an easy one: North Carolina uses the UNC Tar Heels colors.
Here's another hint: Most of the Canadian provinces use a sport that's wildly popular in Canada in the wintertime.
If you want a challenge, here are a few states that use a sports team's color that may not be that obvious:
- Arizona
- British Columbia (this one is subtly obvious)
- Georgia
- Minnesota
- Missouri
- Saskatchewan
- Texas
- Wisconsin
Finally, don't forget that not all states use a sport's teams color scheme. Illinois and New Jersey are notable exceptions, as they use colors on their respective state flags.
Data Information
Data Source
The data in this application comes from John's Hopkins University. I keep a copy of the data in my own database so this application will still function should the John's Hopkins site ever go down.
Data Updates
Data in this application is updated daily, between 7 and 8 AM Pacific Time.
Last Update
- The countries plot contains data through Monday, 4 July, 2022.
- The states plot contains data through Monday, 4 July, 2022.
Data Time Zones and the Definition of 1 Day
- John's Hopkins defines 1 day as 12:01 AM to 11:59 PM UTC.
- In the United States and Canada, Eastern Standard Time is 5 hours behind UTC, and Pacific Standard Time is 8 hours behind UTC.
- Midnight UTC is 7 PM EST or 4 PM PST.
Default Data
I will be plotting the data for whatever the "hottest" countries and US States currently are when the page initially loads. If the outbreak has passed over an area and you are certain that the app is not updating, clear the cache in your browser, as the browser may have cached the default data.
My Analysis
Throughout the course of the pandemic, I will be posting my own analysis of both the actual case data and the mathematical model outputs on my blog. Since I claim zero knowledge of anything in the medical field, these analyses will be based solely on mathematics and my expertise in data analysis and numerical modeling.
Model Output
The output from the most recent run of my revised SIR model are posted in the table below. I can run this model for any country in the world and any state listed on the Plot By State Tab, so please let me know if you have any requests.
The model is run every Monday morning, and will be run more frequently if needed – usually when a significant surge in cases occurs. My goal is to have results of each model run posted by 9 AM Pacific Time.
Additional Model Information
- The table below contains just the output of the single model run and does not necessarily reflect what my personal predictions are.
- The model takes into account all social distancing restrictions through about 1 to 2 weeks before the model run. The 1 to 2 week offset is due to the lag between when a restriction is changed and when its effects appear in the data.
- The model assumes that all social distancing restrictions that are in place 1 to 2 weeks before the date of the model run remain in place for the entire period that the model projects
- The Apex Date indicates that the apex or peak is projected to occur at some point in the range shown. The apex will not last the entire length of that range.
- The "Earliest Start of Reopening" column has been removed because the federal guidelines were completely ignored in the United States.
- View previous or older model runs by selecting a model run from the dropdown menu located below the table.
Time Series Plots for Each State
Beginning with the 25 April, 2020 run, I am including time-series plots of the actual case counts and the model projections for each state.
Click on the link below to access the model output plot repository. Click on the date of the model run you wish to view, and then click on the state you wish to view.
Model Run: 7 March, 2022
There are no general comments associated with this model run.
Confidence in the Model Output
- Dates: High. The model has a very good grasp on apex dates.
- Case Counts: High. The model retains incredibly high run-to-run stability for new cases counts.
Possible Anomalies in the Model Output
- There are no oddities or anomalies with the data in this run.
State/Province | Actual Cases 6 March | Projected Cases 21 March | Projected Cases 7 April | Projected Apex Date |
---|---|---|---|---|
Alabama | 1,282,945 | 1,290,000 to 1,562,000 | 1,291,000 to 1,562,000 | 2 Mar, 2021 to 21 Jun, 2021 |
Alaska | 240,789 | 243,000 to 336,000 | 244,000 to 336,000 | 12 Apr, 2021 to 9 Oct, 2021 |
Alberta | 527,604 | 532,000 to 645,000 | 532,000 to 645,000 | 23 Jan, 2021 to 29 Apr, 2021 |
Arizona | 1,980,769 | 1,993,000 to 2,414,000 | 1,994,000 to 2,414,000 | 20 Mar, 2021 to 17 Jul, 2021 |
Arkansas | 823,210 | 828,000 to 1,002,000 | 828,000 to 1,002,000 | 12 Feb, 2021 to 26 May, 2021 |
Baja California | 129,988 | 130,000 to 181,000 | 131,000 to 181,000 | 28 Apr, 2021 to 25 Sep, 2021 |
British Columbia | 349,944 | 353,000 to 489,000 | 355,000 to 489,000 | 21 Apr, 2021 to 6 Nov, 2021 |
California | 9,005,322 | 9,059,000 to 11,019,000 | 9,075,000 to 11,020,000 | 12 May, 2021 to 4 Oct, 2021 |
Campeche | 33,445 | 33,000 to 46,000 | 33,000 to 46,000 | 4 Feb, 2021 to 24 Apr, 2021 |
Chihuahua | 125,256 | 125,000 to 173,000 | 126,000 to 174,000 | 26 Apr, 2021 to 21 Sep, 2021 |
Ciudad de México | 1,363,836 | 1,379,000 to 1,675,000 | 1,380,000 to 1,675,000 | 6 May, 2021 to 26 Aug, 2021 |
Coahuila de Zaragoza | 143,618 | 144,000 to 200,000 | 145,000 to 201,000 | 5 May, 2021 to 7 Oct, 2021 |
Colorado | 1,317,447 | 1,333,000 to 1,614,000 | 1,333,000 to 1,614,000 | 25 Feb, 2021 to 17 Jun, 2021 |
Connecticut | 724,833 | 730,000 to 884,000 | 730,000 to 884,000 | 5 Feb, 2021 to 17 May, 2021 |
Delaware | 257,270 | 257,000 to 312,000 | 257,000 to 312,000 | 29 Dec, 2020 to 21 Mar, 2021 |
District of Columbia | 134,623 | 135,000 to 185,000 | 135,000 to 185,000 | 28 Feb, 2021 to 28 Jul, 2021 |
Estado de México | 527,402 | 536,000 to 788,000 | 545,000 to 788,000 | 25 Jul, 2021 to 4 Mar, 2022 |
Florida | 5,858,052 | 5,877,000 to 7,136,000 | 5,885,000 to 7,137,000 | 28 Apr, 2021 to 12 Sep, 2021 |
Georgia | 2,470,384 | 2,491,000 to 3,018,000 | 2,493,000 to 3,018,000 | 24 Mar, 2021 to 25 Jul, 2021 |
Hawaii | 237,363 | 239,000 to 329,000 | 240,000 to 329,000 | 8 Apr, 2021 to 5 Oct, 2021 |
Idaho | 432,483 | 442,000 to 618,000 | 445,000 to 618,000 | 14 May, 2021 to 11 Dec, 2021 |
Illinois | 3,037,199 | 3,069,000 to 3,720,000 | 3,072,000 to 3,720,000 | 2 Apr, 2021 to 6 Aug, 2021 |
Indiana | 1,683,739 | 1,694,000 to 2,051,000 | 1,695,000 to 2,052,000 | 14 Mar, 2021 to 7 Jul, 2021 |
Iowa | 755,547 | 764,000 to 1,089,000 | 772,000 to 1,089,000 | 14 Jun, 2021 to 6 Feb, 2022 |
Kansas | 768,243 | 775,000 to 1,107,000 | 784,000 to 1,107,000 | 17 Jun, 2021 to 10 Feb, 2022 |
Kentucky | 1,286,697 | 1,314,000 to 1,938,000 | 1,337,000 to 1,939,000 | 17 Jul, 2021 to 8 Apr, 2022 |
Louisiana | 1,164,620 | 1,167,000 to 1,413,000 | 1,168,000 to 1,413,000 | 21 Feb, 2021 to 10 Jun, 2021 |
Maine | 230,720 | 236,000 to 325,000 | 237,000 to 325,000 | 4 Apr, 2021 to 30 Sep, 2021 |
Manitoba | 131,526 | 135,000 to 185,000 | 135,000 to 185,000 | 9 Mar, 2021 to 6 Aug, 2021 |
Maryland | 1,004,539 | 1,015,000 to 1,465,000 | 1,028,000 to 1,465,000 | 27 Jun, 2021 to 6 Mar, 2022 |
Massachusetts | 1,675,767 | 1,679,000 to 2,033,000 | 1,680,000 to 2,033,000 | 4 Mar, 2021 to 28 Jun, 2021 |
Michigan | 2,365,827 | 2,394,000 to 2,901,000 | 2,396,000 to 2,901,000 | 26 Mar, 2021 to 26 Jul, 2021 |
Minnesota | 1,417,811 | 1,432,000 to 1,734,000 | 1,433,000 to 1,734,000 | 6 Mar, 2021 to 27 Jun, 2021 |
Mississippi | 791,208 | 795,000 to 963,000 | 796,000 to 963,000 | 10 Feb, 2021 to 24 May, 2021 |
Missouri | 1,404,926 | 1,414,000 to 1,712,000 | 1,415,000 to 1,712,000 | 8 Mar, 2021 to 29 Jun, 2021 |
Montana | 271,030 | 280,000 to 387,000 | 281,000 to 387,000 | 18 Apr, 2021 to 22 Oct, 2021 |
Nebraska | 476,194 | 483,000 to 677,000 | 486,000 to 677,000 | 23 May, 2021 to 24 Dec, 2021 |
Nevada | 685,346 | 694,000 to 982,000 | 700,000 to 983,000 | 5 Jun, 2021 to 23 Jan, 2022 |
New Brunswick | 38,937 | 41,000 to 56,000 | 41,000 to 56,000 | 2 Jan, 2021 to 1 Apr, 2021 |
New Hampshire | 291,137 | 302,000 to 418,000 | 304,000 to 418,000 | 18 Apr, 2021 to 26 Oct, 2021 |
New Jersey | 2,174,473 | 2,187,000 to 2,649,000 | 2,188,000 to 2,649,000 | 19 Mar, 2021 to 17 Jul, 2021 |
New Mexico | 513,311 | 514,000 to 622,000 | 514,000 to 622,000 | 28 Jan, 2021 to 2 May, 2021 |
New York | 4,937,052 | 4,954,000 to 6,010,000 | 4,959,000 to 6,010,000 | 18 Apr, 2021 to 30 Aug, 2021 |
Newfoundland and Labrador | 25,728 | 28,000 to 38,000 | 28,000 to 38,000 | 29 Nov, 2020 to 6 Feb, 2021 |
North Carolina | 2,598,014 | 2,641,000 to 3,200,000 | 2,643,000 to 3,200,000 | 30 Mar, 2021 to 1 Aug, 2021 |
North Dakota | 238,753 | 241,000 to 293,000 | 241,000 to 293,000 | 1 Jan, 2021 to 24 Mar, 2021 |
Nova Scotia | 46,795 | 48,000 to 66,000 | 48,000 to 66,000 | 3 Jan, 2021 to 10 Apr, 2021 |
Nuevo León | 309,021 | 310,000 to 441,000 | 313,000 to 441,000 | 21 Jun, 2021 to 31 Dec, 2021 |
Ohio | 2,659,498 | 2,675,000 to 3,242,000 | 2,677,000 to 3,242,000 | 30 Mar, 2021 to 1 Aug, 2021 |
Oklahoma | 1,024,471 | 1,035,000 to 1,254,000 | 1,036,000 to 1,254,000 | 25 Feb, 2021 to 12 Jun, 2021 |
Ontario | 1,126,445 | 1,157,000 to 1,678,000 | 1,174,000 to 1,679,000 | 1 Jul, 2021 to 17 Mar, 2022 |
Oregon | 696,717 | 706,000 to 1,000,000 | 713,000 to 1,000,000 | 6 Jun, 2021 to 25 Jan, 2022 |
Pennsylvania | 2,763,589 | 2,785,000 to 3,374,000 | 2,787,000 to 3,375,000 | 30 Mar, 2021 to 1 Aug, 2021 |
Québec | 929,038 | 942,000 to 1,354,000 | 954,000 to 1,355,000 | 23 Jun, 2021 to 26 Feb, 2022 |
Quintana Roo | 91,064 | 91,000 to 125,000 | 91,000 to 125,000 | 7 Apr, 2021 to 15 Aug, 2021 |
Rhode Island | 356,783 | 357,000 to 432,000 | 357,000 to 432,000 | 11 Jan, 2021 to 9 Apr, 2021 |
Saskatchewan | 128,289 | 130,000 to 179,000 | 131,000 to 179,000 | 4 Mar, 2021 to 31 Jul, 2021 |
Sinaloa | 119,882 | 121,000 to 168,000 | 122,000 to 168,000 | 24 Apr, 2021 to 17 Sep, 2021 |
Sonora | 162,431 | 164,000 to 228,000 | 165,000 to 228,000 | 12 May, 2021 to 21 Oct, 2021 |
South Carolina | 1,462,846 | 1,474,000 to 1,784,000 | 1,474,000 to 1,784,000 | 7 Mar, 2021 to 28 Jun, 2021 |
South Dakota | 236,276 | 236,000 to 287,000 | 236,000 to 287,000 | 1 Jan, 2021 to 22 Mar, 2021 |
Tamaulipas | 141,164 | 141,000 to 195,000 | 142,000 to 196,000 | 3 May, 2021 to 4 Oct, 2021 |
Tennessee | 2,012,072 | 2,023,000 to 2,450,000 | 2,024,000 to 2,450,000 | 19 Mar, 2021 to 16 Jul, 2021 |
Texas | 6,639,270 | 6,692,000 to 8,132,000 | 6,702,000 to 8,133,000 | 5 May, 2021 to 22 Sep, 2021 |
Utah | 924,248 | 929,000 to 1,124,000 | 929,000 to 1,124,000 | 17 Feb, 2021 to 2 Jun, 2021 |
Vermont | 113,107 | 114,000 to 156,000 | 114,000 to 156,000 | 21 Feb, 2021 to 13 Jul, 2021 |
Virginia | 1,645,791 | 1,675,000 to 2,028,000 | 1,676,000 to 2,028,000 | 12 Mar, 2021 to 6 Jul, 2021 |
Washington | 1,430,235 | 1,449,000 to 1,754,000 | 1,449,000 to 1,754,000 | 26 Feb, 2021 to 19 Jun, 2021 |
West Virginia | 492,276 | 498,000 to 699,000 | 502,000 to 700,000 | 25 May, 2021 to 27 Dec, 2021 |
Wisconsin | 1,574,581 | 1,581,000 to 1,914,000 | 1,582,000 to 1,914,000 | 9 Mar, 2021 to 2 Jul, 2021 |
Wyoming | 155,426 | 156,000 to 189,000 | 156,000 to 189,000 | 15 Dec, 2020 to 26 Feb, 2021 |
Yucatán | 108,425 | 108,000 to 132,000 | 108,000 to 132,000 | 21 Jan, 2021 to 29 Mar, 2021 |
United States Total | 79,271,466 | 79,346,000 to 97,937,000 | 79,493,000 to 97,945,000 | N/A |
View Previous Model Runs
Model Performance
I have a firm belief that modelers should both stand by and hold themselves accountable for their model's predictions. This belief not only promotes better models, but also builds trust and reduces both false hope and doomsday scenarios that inaccurate models may forecast.
On this page, you will find a complete report of how each run of my SIR model performed, including both and overall and state-by-state report of how the model's two-week and one-month projections compare to the actual data on those dates. I take great pride in my work and hold myself to the highest of standards, so if the model performance is not up to snuff, please let me know.
While not every model run is going to be perfect, I hope the model can achieve the following goals.
- 2 Week Projections: 65% correct rate, with 80% of incorrect projections missing by 5,000 cases or less.
- 1 Month Projections: 50% correct rate, with 50% of incorrect projections missing by 5,000 cases or less.
Note: Because the 2 week actual case data is required to evaluate the model's performance, only model runs more than two weeks old are available for viewing on this page. If a model run is more than two weeks old, but less than one month, you will see "N/A" in the one month performance statistics.
Select a Model Run
Model Run:
General Comments on Day of Model Run
Confidence in Case Counts on Day of Model Run
Confidence in Apex Dates on Day of Model Run
Possible Anomalies in the Model Output
Overall Model Performace
2 Week Projections | |
---|---|
Correct Projections | |
Incorrect Projections | |
Average Miss | |
Median Miss | |
Smallest Miss | |
Largest Miss | |
Misses by < 1,000 Cases | |
Misses by 1,000 to 5,000 | |
Misses by > 5,000 Cases |
1 Month Projections | |
---|---|
Correct Projections | |
Incorrect Projections | |
Average Miss | |
Median Miss | |
Smallest Miss | |
Largest Miss | |
Misses by < 1,000 Cases | |
Misses by 1,000 to 5,000 | XX out of YY (ZZ%) |
Misses by > 5,000 Cases |
State-by-State Performance
State/Province | Actual Cases | Predicted Cases | Actual Cases | Predicted Cases | Actual Cases |
---|
US State Reopening
The purpose of this tab is to provide general information for how close states might be to meeting criteria for re-opening, based on the "Opening Up America Again" guidelines that the White House and the Centers for Disease Control published in mid-April, 2020.
This tab is based on the actual observed data. To view model outputs, please click on the "Model Output" tab.
Please note that I do not have data for certain criteria which the White House and CDC advises, so this page cannot say for certain whether states meet all criteria to reopen.
This tab provides:
- A table of 3-day comparing moving averages for new cases today vs. 2 weeks ago, normalized per 1 million population
- A table of 3-day comparing moving averages for new cases today vs. 2 weeks ago, for the entire population
- Tables showing the 5 highest daily increases in confirmed cases and deaths of the entire pandemic for each state.
Select a Table to View
Total New Case Counts
This table contains trends of new cases over the past two weeks for each state's entire population. The same data is available normalized per 1 million population in each state.
The table is sorted in descending order by the average of daily new cases per 1 million people for the past three days. States at the top of the list are furthest from meeting criteria to reopen, while states at the bottom are closest to meeting criteria to reopen.
Target Threshholds to Move to Next Phase of Reopening
Governments, health experts, and modelers are using the normalized case data per 1 million population to make assessments. Please select "Cases Per 1 Million Population" from the dropdown menu above to view target threshholds for moving to the next phase of reopening.
State | Avg Daily New Cases 18 – 20 Jun |
Avg Daily New Cases 2 – 4 Jul |
14-Day General Trend | 14-Day Max Daily Increase |
---|
New Case Counts Per 1 Million Population
One of the most critical requirements to reopen each state can be found in this table: the 3-day average daily new cases per 1 million population. This metric is so critical because it defines how each state's health care system can handle any resurgence in COVID-19 cases that arise as a result of reopening.
The table is sorted in descending order by the average of daily new cases per 1 million people for the past three days. States at the top of the list are furthest from meeting criteria to reopen, while states at the bottom are closest to meeting criteria to reopen.
Target Threshholds to Move to Next Phase of Reopening
- 3-Day average daily new cases 2 weeks ago should be minimal.
- 3-Day average daily new cases today must be less than 5-7 new cases per million people per day.
- The 14-day general trend must be downward.
- The largest increase in new cases in the last 14 days (rightmost column) must be less than 5-7. This column is in units of new cases per million people per day.
- Please note that the CDC/White House guidelines require more threshholds than are just in this table to be met before moving to the next phase of reopening.
State | Avg Daily New Cases 19 – 21 Jun |
Avg Daily New Cases 2 – 4 Jul |
14-Day General Trend | 14-Day Max Daily Increase |
---|
Largest Daily Increases in New Cases and Deaths
These tables show the five largest increases in daily new cases and daily new deaths since the start of the pandemic. Their purpose is to shed light on if/when the peak has possibly occurred.
I have a few tips to keep in mind when looking at these tables:
- Each wave of the pandemic often has several peaks as part of the main peak, especially if the peak is more of a plateau, which we are currently seeing in many states. This tool will likely not find them all.
- Use the "New Cases" and "New Deaths" plots on the "Plot By State" tab to confirm if/when the peak has occurred.
- Just because the tables are showing the peak may have occurred does not necessarily mean it actually has!
- We likely won't know that we actually hit the peak until at least 2 to 3 weeks after the peak hits.
- These tables will likely be updated as the pandemic progresses to show the maximum daily increases in cases and deaths over the past month or so.
Target Threshholds to Identify the Peak
- At least 4 out of the 5 dates should all be clustered around each other
- All 5 dates should have occurred at least 14 days ago
More
Numerical Modeling
By now, you've probably heard the term "models" thrown around at some form of press briefing about the pandemic, whether it's coming from the White House, your governor, or your local city/town officials. They are referring to mathematical models, which are simulations of the outbreak using different scenarios or parameters. These models are critical when it comes to emergency management decisions, response, and preparedness.
I have built my own model in Python and have provided a link to a Jupyter Notebook with that model below. My model is built using the SIR model (see below) as a foundation. The model assumes that the current social distancing measures are extended into the future
and uses a numerical best-fit algorithm to make forecasts based on extrapolations of the latest observed data. The Jupyter Notebook has a simple user interface that allows you to look at different scenarios and outcomes in addition to the model's best-fit predictions.
Note: Running the Jupyter Notebook requires basic knowledge of the Python programming language and basic knowledge of the command line (Terminal/Command Prompt) interface. Please do not attempt to run the Jupyter notebook unless you are comfortable working with Python and the command line.
The SIR Model
The Susceptible - Infected - Removed (SIR) model is one of the simplest models for simulating infectious disease outbreaks. I covered the model in full detail in a recent blog post, but if you're pressed for time, here are the highlights:
- The model uses a system of three ordinary differential equations to model the outbreak.
- Because the SIR model assumes a constant population density, it is much more accurate for smaller political denominations, such as cities and counties, than it is for states and countries. Even at the country level, it would be much more accurate simulating the outbreak for a small country like South Korea than it would be for the United States.
- The model assumes that the R Naught value (the average number of people a sick person infects over the course of their illness) is constant throughout the entire outbreak. In real life, the R Naught value is constantly changing, so I recommend you use an average value when you run the model.
- Experts say that the R Naught value for COVID-19 is somewhere in the 2.3 to 2.4 range.
- In the real world the R Naught value is controlled by implementing restrictions such as social distancing, closing places of public gathering, restricting travel, and stay-at-home orders/lockdowns.
- According to one study, the R Naught value in Wuhan, China dropped from 2.4 to 1.05 within one week of the city being placed on lockdown.
System Requirements for the Jupyter Notebook
- A Windows, Linux, or Mac Computer
- A Web Browser. Google Chrome is recommended
- Python 3
- A Terminal, Command Prompt, or Windows PowerShell
Note: The calendar date features in the Jupyter notebook may not work in Apple's Safari browser. This is a limitation of Safari. As I mentioned earlier, I highly recommend that you run the Jupyter Notebook in Google Chrome.
Please note that several Python modules are specific, but instructions for installing those can be found in the Jupyter Notebook.
Setting Up and Installing Jupyter
Please consult the Jupyter Documentation for instructions how to install Jupyter.
Download the Jupyter Notebook
Download the Jupyter Notebook (a 410 kB *.ipynb file)
Versioning
Version 3.1.2
Released 7 April, 2022
- Fix bug where country checkboxes wouldn't load
- Update list of default countries and states on dashboard
Version 3.1.1
Released 15 October, 2021
- Load Matt's Risk Index on map by default
- Update list of default countries and states on dashboard
- Fix issue where some CSV files for the map were overloading the server's memory
Version 3.1
Released 1 September, 2021
- Add all countries for which we have data by state/province to map
- Add word-based risk-level to accompany Matt's Risk Index
- Bug fixes for isolated instances where colors on the map were not displaying correctly
Version 3.0.5
Released 10 July, 2021
- Update default countries and states to highlight COVID-19 surges in the delta variant in the United States and around the world.
Version 3.0.4
Released 25 April, 2021
- Update default countries and states to highlight the massive COVID-19 outbreak affecting India.
- Add Indian states to COVID-19 map
Version 3.0.3
Released 15 March, 2021
- Update text to explain the COVID-19 model will only be run once per week
- Minor bug fixes
Version 3.0.2
Released 5 March, 2021
- Fix bug where model performance miss counts were incorrect.
- Fix bug where initial dataset was loaded into map twice
Version 3.0
Released 28 December, 2020
- Map: All datasets now have streamlined user interface and time series plots
- Map: Plot By State/Province now supports Australia, Canada, Mexico, and the United States
- Map: Plot US Data by County
- Map: Add support for World Territories
- Map: Plot mask mandates for all states and provinces in Canada, Mexico, and the United States.
- Map: Greatly expand data in pop-up feature boxes that appear when you click on an entity.
- Dashboard: Add ability to plot calendar date on X-Axis of Country and State Plots
- Dashboard: Plot by State Chart now supports states/provinces in 18 countries.
- Dashboard: Improved design and user interface
- Dashboard: Add country flags to model run and performance tabs to make states/provinces easier to indentify
Version 2.5.2
Released 30 November, 2020
- Reformatted model output table and rearranged column order.
- Removed earliest start of reopening column.
- Added US total projections to the bottom of the model run table.
Version 2.5.1
Released 12 October, 2020
- Add ability to parse query strings so that you can open specific tabs when the page initially loads.
Version 2.5
Released 6 October, 2020
- Optimize and Significantly Reduce Load Times on all Plots, Tables, and Maps.
- Updated list of countries and states that load on the plots by default.
Version 2.4
Released 5 September, 2020
- Standardize all date formats to Day Month, Year
- Updated list of countries that load on the plots by default.
Version 2.3
Released 2 August, 2020
- Improved data loading times when page and map loads
- Updated list of states that load on the plots by default.
Version 2.2
Released 30 June, 2020
- Set plots to load "New Cases" plots by default
- Updated text about when daily data updates are made
- Updated list of states and countries that load on the plots by default.
Version 2.1.2
Released 15 June, 2020
- Updated list of states and countries that load on the plots by default.
Version 2.1.1
Released 28 May, 2020
- Updated list of states and countries that load on the plots by default.
- Minor bug fixes
Version 2.1
Released 19 May, 2020
- Add ability to plot data by state/province (US and Canada only) on the map
- Set the legends on all plots so the color breaks are on a modified logarithmic scale.
If you are experiencing strange behavior in the map after this update, please clear your web browser's cache.
Version 2.0
Released 14 May, 2020
- Added a COVID-19 map with the following features:
- Plot COVID-19 total confirmed cases and deaths, as well as daily new confirmed cases and deaths on a map.
- Countries are shaded, no dots or other symbols used
- Timeline feature allows you to view the map over time, as well as animate the pandemic over time
- View simple plots of data over time in the map viewer
- Currently only supports countries only. The same feature for states/provinces in the United States and Canada is coming in Version 2.1.
Version 1.5
Released 12 May, 2020
- Added "Model Performance" tab to validate and evaluate model predictions.
Version 1.4.4
Released 8 May, 2020
- Added bar charts to New Case and New Death plots when only one state or country is displayed.
Version 1.4.3
Released 8 May, 2020
- Added option to display moving averages (0 to 14 day) on the New Case and New Death plots.
Version 1.4.2
Released 27 April, 2020
- Plot normalized (per 1 million population) total case and new case data on the "Plot By Country" and "Plot By State" tabs
Version 1.4.1
Released 27 April, 2020
- Post revised Jupyter notebook
- Revisions to default countries and states that are pre-loaded into the plots
- Bug fixes
Version 1.4
Released 25 April, 2020
- Major reconfigurations to model output table to make projections by state.
- Added projected reopening dates to model outputs.
- Added time series plots of the actual data and the model predictions for each state in each model run
Version 1.3.1
Released 22 April, 2020
- Added social distancing restrictions to the state plots (US States only)
- Adjusted radius size of points on the line charts
Version 1.3
Released 21 April, 2020
- Added State Reopening Tab
- Removed Michigan, Louisiana, and New Jersey from default state plot
- Added Connecticut, Georgia, and Pennsylvania to default state plot
Version 1.2.1
Released 14 April, 2020
- Added dropdown menu to view older/previous model runs
Version 1.2
Released 9 April, 2020
- Added tab that contains the results table for the output of our revised SIR model
Version 1.1.1
Released 8 April, 2020
- Added an experimental social distancing parameter to our revised SIR model
- Added improvements for how the "working" revised SIR model handles social distancing
Version 1.1
Released 3 April, 2020
- Added support to switch between linear and logarithmic scales on the y-axis
- Added the ability to plot total cases, new cases, total deaths, and new deaths
Version 1.0.1
Released 31 March, 2020
- Fixed a bug causing the checkboxes to not display correctly in Safari
Version 1.0
Released 31 March, 2020
- Plot confirmed cases by country and state (US/Canada/Australia)
- Add and remove any countries/states from the charts
- Ability to clear all data from the plot
- Include Jupyter Notebook to run SIR models for different scenarios