From a7171ceef27f07395d92eca32c5e9c41ac7541ea Mon Sep 17 00:00:00 2001 From: frankknoll Date: Tue, 15 Mar 2022 02:41:06 +0100 Subject: [PATCH] starting FreeBedsChartView --- docs/FreeBedsChartView.js | 86 +++ docs/IntensiveCareCapacitiesChartView.js | 4 +- docs/intensivstationen.html | 889 ++++++++++++----------- 3 files changed, 562 insertions(+), 417 deletions(-) create mode 100644 docs/FreeBedsChartView.js diff --git a/docs/FreeBedsChartView.js b/docs/FreeBedsChartView.js new file mode 100644 index 00000000000..e6d2d05a6fc --- /dev/null +++ b/docs/FreeBedsChartView.js @@ -0,0 +1,86 @@ +class FreeBedsChartView { + + #canvas; + #chart; + + constructor(canvas) { + this.#canvas = canvas; + } + + displayChart({ data, title }) { + if (this.#chart != null) { + this.#chart.destroy(); + } + this.#chart = new Chart( + this.#canvas, + { + type: 'line', + data: this.#getData(data), + options: this.#getOptions(title) + }); + } + + #getData(data) { + return { + datasets: [ + { + label: 'Anteil freier Betten', + data: data, + parsing: { + yAxisKey: 'free_beds_divided_by_all_beds' + }, + backgroundColor: 'rgba(0, 255, 0, 1)' + } + ] + }; + } + + #getOptions(title) { + return { + plugins: { + title: { + display: true, + text: title + }, + tooltip: { + callbacks: { + label: function (context) { + let label = context.dataset.label || ''; + + if (label) { + label += ': '; + } + if (context.parsed.y !== null) { + label += context.parsed.y.toFixed(1) + "%"; + } + return label; + } + } + } + }, + responsive: true, + scales: { + x: { + type: 'time', + time: { + unit: 'month' + } + }, + y: { + // min: 0, + // max: 100, + title: { + display: true, + text: "Anteil freier Betten" + }, + ticks: { + callback: value => value + "%" + } + } + }, + parsing: { + xAxisKey: 'date' + } + }; + } +} \ No newline at end of file diff --git a/docs/IntensiveCareCapacitiesChartView.js b/docs/IntensiveCareCapacitiesChartView.js index e6b1effad2f..4b815e41822 100644 --- a/docs/IntensiveCareCapacitiesChartView.js +++ b/docs/IntensiveCareCapacitiesChartView.js @@ -29,7 +29,7 @@ class IntensiveCareCapacitiesChartView { parsing: { yAxisKey: 'betten_belegt' }, - backgroundColor: 'rgba(255, 0, 0, 1)', + backgroundColor: 'rgba(255, 0, 0, 1)' }, { label: 'Freie Betten', @@ -37,7 +37,7 @@ class IntensiveCareCapacitiesChartView { parsing: { yAxisKey: 'betten_frei' }, - backgroundColor: 'rgba(0, 255, 0, 1)', + backgroundColor: 'rgba(0, 255, 0, 1)' } ] }; diff --git a/docs/intensivstationen.html b/docs/intensivstationen.html index 23bbdf045a7..f066b15a089 100644 --- a/docs/intensivstationen.html +++ b/docs/intensivstationen.html @@ -1,21 +1,59 @@ + - - -DIVI-Intensivregister auf Landkreisebene - - - - - - - - + + + + + + + + + -Fork me on GitHub -

DIVI-Intensivregister auf Landkreisebene

- - -

+ Fork me on GitHub +

DIVI-Intensivregister auf Landkreisebene

+ + +

Einwohnerzahl: -

- -

-
-
Belegte Betten:
-
Anzahl der belegten Intensivbetten (Low- und High-Care), unabhängig von der Behandlungsursache, +

+ +

+
+
Belegte Betten:
+
Anzahl der belegten Intensivbetten (Low- und High-Care), unabhängig von der Behandlungsursache, für Erwachsene und Kinder.
-
Freie Betten:
-
Anzahl der freien, betreibbaren Intensivbetten (Low- und High-Care) für Erwachsene und Kinder zur +
Freie Betten:
+
Anzahl der freien, betreibbaren Intensivbetten (Low- und High-Care) für Erwachsene und Kinder zur Behandlung von allen intensivpflichtigen Erkrankungen.
-
Datensatz:
-
Landkreis-Daten
-
Datenstand:
-
12.03.2022, 12:38 Uhr
-
+
Datensatz:
+
Landkreis-Daten
+
Datenstand:
+
12.03.2022, 12:38 Uhr
+
+

+ +

+ \ No newline at end of file