marcusraitner / COVID-19-Dashboard

Dieses Scriptable-Skript erzeugt ein Widget, das den Verlauf der 7-Tage-Inzidenz und die Auslastung der Intensivbetten am aktuellen Standort anzeigt. Zusätzlich angezeigt wird der aktuelle Wert der 7-Tage-Inzidenz des zugehörigen Bundeslandes und der Impfstatus des Bundeslandes.
GNU General Public License v3.0
210 stars 16 forks source link
covid-19 dashboard

COVID-19-Dashboard

Dieses Scriptable-Skript erzeugt ein Widget, das den Verlauf der 7-Tage-Inzidenz und die Auslastung der Intensivbetten am aktuellen Standort innerhalb Deutschlands anzeigt. Zusätzlich angezeigt wird der aktuelle Wert der 7-Tage-Inzidenz des zugehörigen Bundeslandes und der Impfstatus des Bundeslandes. Optional (Paramter de=y) kann auch der Inzidenzwert von Deutschland und der R-Wert für Deutschland angezeigt werden. Hier ein Beispiel für den Landkreis Ebersberg im neuen RKI-Theme (theme=rki):

IMG_1629

Derzeit gibt es das Widget nur in diesem mittelgroßen Format.

Kontakt und Support

Für Ideen und Fehlermeldungen bitte ein Issue erstellen.

☕️ Einen Kaffee ausgeben: https://ko-fi.com/marcusraitner

Changelog

v1.12.0

v1.11.0

v1.10.1

v1.10.0

v1.9.0

v1.8.0

v1.7.0

Erläuterung

Balkendiagramm

Stellt den Verlauf der 7-Tage-Inzidenz dar. Der hellere Anteil in jedem Balken stellt den Zuwachs an Fällen dar (s. Berechnung). Die durch den Paramter days festgelegten letzten Tage werden detailliert dargestellt, also mit den konkreten Inzidenzwerten. Die Tage davor werden komprimiert dargestellt. Die Farben entsprechen den Grenzwerten 50 (gelb), 100 (hellorange), 165 (orange), 200 (rot).

Intensivbetten

Der gesamte Balken repräsentiert alle verfügbaren Betten. Der rechte grüne Anteil sind die freien Betten. Der linke rote Anteil die mit COVID-19 Patienten belegten Betten. Der dunkelrote Anteil sind davon die COVID-19 Patienten mit Beatmung. Der graue Teil des Balkens repräsentiert die mit anderen Patienten belegten Betten.

Impfstatus

Beim Impfstatus werden zwei Werte angezeigt (für das Bundesland; auf Landkreisebene gibt es die Daten nicht): Der Anteil der einmalig geimpften und der Anteil der zweimalig geimpften Personen.

Hospitalisierung

Rechts neben den Balken der Intensivbetten wird die 7-Tages-Hospitalisierungsinzidenz und der Absolutwert der hospitalisierten Fälle der letzten sieben Tage des aktuellen Bundeslandes angezeigt.

IMG_0363

Links zu Coronaregeln

Ein Klick auf die Überschrift bzw. den Landkreis öffnet die Coronaregeln des jeweiligen Bundeslandes (Quelle der Links: Übersichtsseite der Bundesregierung)

Parameter

Das Widget erlaubt folgende Parameter in beliebiger Reihenfolge mit Semikolon (";") getrennt, also z.B. loc=48.34,10.78;de=y;rval=y;vac=n;daily=y;beds=y;frozen=n;days=5

Datenquellen

Berechnung

Mit den Koordinaten des aktuellen Standorts (oder den mit loc= übergebenen Koordinaten) wird der aktuelle Landkreis ermittelt und dann zu diesem die Tagessummen und wenn nötig die Daten des Intensivregisters und der Impfstatus ermittelt.

Aus den Tagesummen wird dann die 7-Tages-Inzidenz wie folgt berechnet: Inzidenz am Tag X + 1 = Summe (Tagessumme Tag X, Tagessumme Tag X-1, … Tagessumme Tag X - 6) / Einwohnerzahl. Die Inzidenzwerte werden auf eine Nachkommastelle gerundet. In diesem Beispiel vom 5.6.2021 berechnet sich der Inzidenzwert von 24,4 für den 4.6.2021 aus den Meldungen der sieben Tage davor (also bis einschließlich 3.6.2021). Zusätzlich angezeigt wird je Tag in der Vergangenheit (also nicht für den heutigen Tag, weil diese Zahlen noch nicht vorliegen) der Zuwachs an Fällen einerseits durch den hellen Balken (neue Fälle dieses Tages je 100.000 Einwohner) plus die absolute Anzahl, in diesem Fall waren das am 4.6.2021 hier in Ebersberg ein neuer Fall.

IMG_1187

Für diese Berechnung werden die Werte immer aktuell geholt, d.h. dass sich aufgrund Nachmeldungen die Werte in der Vergangenheit gegenüber einem Snapshot von gestern auch ändern können. Das ist so gewollt und aus meiner Sicht auch logisch. Im offiziellen Excel des RKI, von dessen Werten die Maßnahmen abhängig sind, wird das aber anders gehandhabt. Dort wird der Wert jeden Tag eingefroren und nicht mehr aufgrund von Nachmeldungen verändert. Diese Logik kann über den Paramter frozen=y explizit gesetzt werden.