The internet has been recently flooded with websites trying to create various statistical information regarding the new coronavirus. Just within the Czech register, there are several. If you are on of the people who like to follow latest “coronavirus” numbers or if you use them in your work, you can face multiple obstacles. Some of the statistics give you the data you need, but they are outdated and are not regurlarly refreshed. In case of dynamic visualizations, you are limited by fixed boundaries. If you are not satisfied with that, you can try a newly created tool for generating dynamic visualizations from the CZ.NIC Association that offers a broad set of features and settings. You can for example choose any country/region and a formula for your desired curve, copy URL and of course refresh the data simply by pressing F5. Everything you can find on the web page https://covid-19.nic.cz/.

How does it work?

Our priority was the possibility to display all available regions. We wanted to give you the chance to display the pretty curves for any country with publicly available data that might not be attractive enough for commonly presented visualizations on the internet.

And now for the functionality. Due to a high complexity, at first most of the controls are hidden. At the right side, there is a menu to enable individual panels.

1. Axes

In the Axes panel, you can choose an axis. The Y axis can be linear, logarithmical, or percentual. The logarithmical axis is most suitable when comparing small and big regions – for instance Czechia with Europe. So even though our country is much smaller, the curve can have a similar shape.

The percentual display is recommended for displaying information that compare multiple factors at once. For example continents make columns divided by confirmed and closed cases, or vice versa (columns of confirmed and closed cases, divided by continents).

The X axis can show either time, or the number of confirmed cases. Displaying a curve of newly confirmed cases against the total number of confirmed cases can clearly show whether a country rides on a wave of exponential growth (which is not very easy to see), or whether it manages to reverse the negative trend.

The switch allows you to choose if you want to display a trend within a period of time, or a situation at one particular date. The slider then renders the chart for the given period.

2. Computation

The Computation tab allows you to choose one of the two ways to calculate the data. The Average button turns on data averaging for last week (moving average for last seven days is used). Even the countries that report their data fairly can make errors. For example Italy reported an increase of 3000 confirmed cases on March 11 and two days later, an increase of 6000 cases while on March 12, the data shows a plain zero.

The other switch is Outbreak that moves all the datasets so they start on a date when the given region reported a certain number of total confirmed cases. What number? You can set it as an absolute value or a percentage of the population. For instance, you can display the trend in European countries at he moment they reached 100 confirmed cases, or 0.1 % of the population (which was, in case of Italy, on March 8). As seen in the chart, besides Italy, another ten European countries reached this level in March, from Iceland to Monaco. Link1

3. Equation

Another interesting menu is Equation that allows you to set an elegant equation to be rendered in the chart. The equation can consist of any arithmetic parameteres and some of the 17 available variables.

The basic equation is simple: C as confirmed cases, R as recovered and D as deaths. An N prefix changes this to newly reported cases on the given date and a dN prefix gives their derivation.

So for instance, if there were five newly recovered patients yesterday and seven today, the dNR variable will have the value of +2 as the number of newly recovered patients increased by two. The P variable stands for population (if it is available for the given region) and T is the number of tested cases (only available for Czechia).

Following is a set of examples with an explanation so the users can better interpret the chart they are looking at.

Any equation can be aggregated, i.e. the data from all the selected countries can be summarized into one dataset. This allows simple comparison of, for example, North and South Europe, or Czechia and its neighbours while displaying only two curves or two columns. Or columns that can be stacked on top of each other, whether based on the equation (confirmed cases on confirmed cases) or based on the regions (Europe on Europe).

The user can create multiple equations at a time. A useful example of that is comparing three different continents by a number of cases of a certain type. Each equation can be displayed on its own chart – instead of nine curves crowded in chart, we have three charts with three curves each. The individual data can be also displayed on an independent Y axis, as shown on the chart of Czechia and Europe trend, although the display is not linear.

4. Display menu

The Display menu offers other useful features. You can describe curves with values or names of their equations. You can change when the charts without line charts show the names of the columns if you do not like the default settings. Also you can change colour schemes and use colours for curves based on their equation or region. Or the order of the items shown upon hovering over something? Would you like to zoom using the mouse wheel or dragging? Just use the setting you like.

How to display data for another country?

That was a pretty tough thing to implement in the app. In the end, we decided to divide the world into continents, countries and states (or provinces). Each equation is linked with a set of regions or their aggregation. If a region has some dependent territories, there is an icon of an eye and check mark. The eye icon shows or hides all the dependent territories not connected to the currently edited equation. The check mark associates all the dependent territories to the equation. By default, the chart shows the continents and all the regions connected to the active equation.

This mechanism helps the user better understand hundreds of variations, especially with the following cases:

People’s Republic of China – consists of individual dependent territories such as Hubei. You can show either the whole territory of PRC, or Hubei.

French Republic – it also consists of multiple territories. Therefore you can display France as a country and as a region (including both the country and the province), or for example Reunion as a province (or other provinces).

A territory is a part of superior regions.

And what about sharing?

The app is designed so that it reflects each step taken by the user in the URL. Once you are satisfied with the chart. You can set a bookmark or copy the URL and when you return, you will find the editor in the same state you left it in. If you want to work with the data on your own, you can just copy them from a dynamic table at any time. Or download them as CSV, JSON, or an image.

Now you can just go and try our new tool to access the data you have been wanting to see. However, when you create your desired visualization keep in mind that what it describes is not the real world but only its digital reflection. It is nothing more than data from available sources. It can be delayed, incomplete or even manipulated. If there are 1000 newly tested people and 500 confirmed cases, it does not mean 500 people got infected today. The test were done a few days ago and the patients got infected even earlier. And those who get infected today will see first symptoms in five days, get tested in a week and appear in the data as tested only in ten days. Or twenty, or maybe never. Or they can possibly appear twice, if one patient is tested twice. It is important to keep in mind that each country can use a different reporting methodology. So some countries might not report people with positive test but no symptoms as infected. So be cautious and remember – it is only data.