Tik op een dag in de verwachtingsstrook voor een uuroverzicht van
temperatuur, regen en wind (richting + snelheid), om de 2 uur, 12
punten per dag. Sluit na 20 seconden vanzelf of bij een tik op de
overlay zelf.
Backend: Open-Meteo levert hourly-data in dezelfde call als daily
(geen extra verzoek, dezelfde 60min-cache). Nieuwe HourlyForecastMapper
groepeert per kalenderdatum en bemonstert om het andere uur, robuust
voor de zomertijddag (23/25 uur). OpenMeteoClient::dailyForecast()
hernoemd naar forecast(), geeft nu {daily, hourly} terug. Elke dag in
de forecast-array krijgt een hourly-lijst.
Frontend: temperatuurlijn hergebruikt sparklinePath (nu ook als
sparklinePoints voor exacte uitlijning met de 12-koloms grid), regen
als kleine staafjes, windpijl (nieuw icoon) wijst waarheen de wind
waait. 20s-balk via CSS transition met reflow-restart. Servicewerker
naar v5.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
807 lines
16 KiB
JSON
807 lines
16 KiB
JSON
{
|
|
"latitude": 51.82,
|
|
"longitude": 6.56,
|
|
"generationtime_ms": 0.2,
|
|
"utc_offset_seconds": 7200,
|
|
"timezone": "Europe/Berlin",
|
|
"timezone_abbreviation": "CEST",
|
|
"elevation": 20,
|
|
"daily_units": {
|
|
"time": "iso8601",
|
|
"weather_code": "wmo code",
|
|
"temperature_2m_max": "\u00b0C",
|
|
"temperature_2m_min": "\u00b0C",
|
|
"precipitation_sum": "mm",
|
|
"precipitation_probability_max": "%"
|
|
},
|
|
"daily": {
|
|
"time": [
|
|
"2026-09-11",
|
|
"2026-09-12",
|
|
"2026-09-13",
|
|
"2026-09-14",
|
|
"2026-09-15",
|
|
"2026-09-16"
|
|
],
|
|
"weather_code": [
|
|
3,
|
|
2,
|
|
0,
|
|
61,
|
|
80,
|
|
2
|
|
],
|
|
"temperature_2m_max": [
|
|
17.9,
|
|
18.3,
|
|
20.1,
|
|
17.4,
|
|
15.2,
|
|
16
|
|
],
|
|
"temperature_2m_min": [
|
|
11,
|
|
10.1,
|
|
11.3,
|
|
12,
|
|
9.4,
|
|
8.1
|
|
],
|
|
"precipitation_sum": [
|
|
0,
|
|
0.4,
|
|
0,
|
|
8.2,
|
|
3.1,
|
|
0.2
|
|
],
|
|
"precipitation_probability_max": [
|
|
10,
|
|
20,
|
|
5,
|
|
80,
|
|
60,
|
|
15
|
|
]
|
|
},
|
|
"hourly_units": {
|
|
"time": "iso8601",
|
|
"temperature_2m": "\u00b0C",
|
|
"precipitation": "mm",
|
|
"wind_speed_10m": "km/h",
|
|
"wind_direction_10m": "\u00b0"
|
|
},
|
|
"hourly": {
|
|
"time": [
|
|
"2026-09-11T00:00",
|
|
"2026-09-11T01:00",
|
|
"2026-09-11T02:00",
|
|
"2026-09-11T03:00",
|
|
"2026-09-11T04:00",
|
|
"2026-09-11T05:00",
|
|
"2026-09-11T06:00",
|
|
"2026-09-11T07:00",
|
|
"2026-09-11T08:00",
|
|
"2026-09-11T09:00",
|
|
"2026-09-11T10:00",
|
|
"2026-09-11T11:00",
|
|
"2026-09-11T12:00",
|
|
"2026-09-11T13:00",
|
|
"2026-09-11T14:00",
|
|
"2026-09-11T15:00",
|
|
"2026-09-11T16:00",
|
|
"2026-09-11T17:00",
|
|
"2026-09-11T18:00",
|
|
"2026-09-11T19:00",
|
|
"2026-09-11T20:00",
|
|
"2026-09-11T21:00",
|
|
"2026-09-11T22:00",
|
|
"2026-09-11T23:00",
|
|
"2026-09-12T00:00",
|
|
"2026-09-12T01:00",
|
|
"2026-09-12T02:00",
|
|
"2026-09-12T03:00",
|
|
"2026-09-12T04:00",
|
|
"2026-09-12T05:00",
|
|
"2026-09-12T06:00",
|
|
"2026-09-12T07:00",
|
|
"2026-09-12T08:00",
|
|
"2026-09-12T09:00",
|
|
"2026-09-12T10:00",
|
|
"2026-09-12T11:00",
|
|
"2026-09-12T12:00",
|
|
"2026-09-12T13:00",
|
|
"2026-09-12T14:00",
|
|
"2026-09-12T15:00",
|
|
"2026-09-12T16:00",
|
|
"2026-09-12T17:00",
|
|
"2026-09-12T18:00",
|
|
"2026-09-12T19:00",
|
|
"2026-09-12T20:00",
|
|
"2026-09-12T21:00",
|
|
"2026-09-12T22:00",
|
|
"2026-09-12T23:00",
|
|
"2026-09-13T00:00",
|
|
"2026-09-13T01:00",
|
|
"2026-09-13T02:00",
|
|
"2026-09-13T03:00",
|
|
"2026-09-13T04:00",
|
|
"2026-09-13T05:00",
|
|
"2026-09-13T06:00",
|
|
"2026-09-13T07:00",
|
|
"2026-09-13T08:00",
|
|
"2026-09-13T09:00",
|
|
"2026-09-13T10:00",
|
|
"2026-09-13T11:00",
|
|
"2026-09-13T12:00",
|
|
"2026-09-13T13:00",
|
|
"2026-09-13T14:00",
|
|
"2026-09-13T15:00",
|
|
"2026-09-13T16:00",
|
|
"2026-09-13T17:00",
|
|
"2026-09-13T18:00",
|
|
"2026-09-13T19:00",
|
|
"2026-09-13T20:00",
|
|
"2026-09-13T21:00",
|
|
"2026-09-13T22:00",
|
|
"2026-09-13T23:00",
|
|
"2026-09-14T00:00",
|
|
"2026-09-14T01:00",
|
|
"2026-09-14T02:00",
|
|
"2026-09-14T03:00",
|
|
"2026-09-14T04:00",
|
|
"2026-09-14T05:00",
|
|
"2026-09-14T06:00",
|
|
"2026-09-14T07:00",
|
|
"2026-09-14T08:00",
|
|
"2026-09-14T09:00",
|
|
"2026-09-14T10:00",
|
|
"2026-09-14T11:00",
|
|
"2026-09-14T12:00",
|
|
"2026-09-14T13:00",
|
|
"2026-09-14T14:00",
|
|
"2026-09-14T15:00",
|
|
"2026-09-14T16:00",
|
|
"2026-09-14T17:00",
|
|
"2026-09-14T18:00",
|
|
"2026-09-14T19:00",
|
|
"2026-09-14T20:00",
|
|
"2026-09-14T21:00",
|
|
"2026-09-14T22:00",
|
|
"2026-09-14T23:00",
|
|
"2026-09-15T00:00",
|
|
"2026-09-15T01:00",
|
|
"2026-09-15T02:00",
|
|
"2026-09-15T03:00",
|
|
"2026-09-15T04:00",
|
|
"2026-09-15T05:00",
|
|
"2026-09-15T06:00",
|
|
"2026-09-15T07:00",
|
|
"2026-09-15T08:00",
|
|
"2026-09-15T09:00",
|
|
"2026-09-15T10:00",
|
|
"2026-09-15T11:00",
|
|
"2026-09-15T12:00",
|
|
"2026-09-15T13:00",
|
|
"2026-09-15T14:00",
|
|
"2026-09-15T15:00",
|
|
"2026-09-15T16:00",
|
|
"2026-09-15T17:00",
|
|
"2026-09-15T18:00",
|
|
"2026-09-15T19:00",
|
|
"2026-09-15T20:00",
|
|
"2026-09-15T21:00",
|
|
"2026-09-15T22:00",
|
|
"2026-09-15T23:00",
|
|
"2026-09-16T00:00",
|
|
"2026-09-16T01:00",
|
|
"2026-09-16T02:00",
|
|
"2026-09-16T03:00",
|
|
"2026-09-16T04:00",
|
|
"2026-09-16T05:00",
|
|
"2026-09-16T06:00",
|
|
"2026-09-16T07:00",
|
|
"2026-09-16T08:00",
|
|
"2026-09-16T09:00",
|
|
"2026-09-16T10:00",
|
|
"2026-09-16T11:00",
|
|
"2026-09-16T12:00",
|
|
"2026-09-16T13:00",
|
|
"2026-09-16T14:00",
|
|
"2026-09-16T15:00",
|
|
"2026-09-16T16:00",
|
|
"2026-09-16T17:00",
|
|
"2026-09-16T18:00",
|
|
"2026-09-16T19:00",
|
|
"2026-09-16T20:00",
|
|
"2026-09-16T21:00",
|
|
"2026-09-16T22:00",
|
|
"2026-09-16T23:00"
|
|
],
|
|
"temperature_2m": [
|
|
10.3,
|
|
9.7,
|
|
9.3,
|
|
9.2,
|
|
9.3,
|
|
9.7,
|
|
10.3,
|
|
11,
|
|
11.9,
|
|
12.8,
|
|
13.7,
|
|
14.6,
|
|
15.3,
|
|
15.9,
|
|
16.3,
|
|
16.4,
|
|
16.3,
|
|
15.9,
|
|
15.3,
|
|
14.6,
|
|
13.7,
|
|
12.8,
|
|
11.9,
|
|
11,
|
|
11.3,
|
|
10.6,
|
|
10.2,
|
|
10.1,
|
|
10.2,
|
|
10.6,
|
|
11.3,
|
|
12.2,
|
|
13.1,
|
|
14.2,
|
|
15.3,
|
|
16.3,
|
|
17.1,
|
|
17.8,
|
|
18.2,
|
|
18.3,
|
|
18.2,
|
|
17.8,
|
|
17.1,
|
|
16.3,
|
|
15.3,
|
|
14.2,
|
|
13.1,
|
|
12.2,
|
|
12.6,
|
|
11.9,
|
|
11.4,
|
|
11.3,
|
|
11.4,
|
|
11.9,
|
|
12.6,
|
|
13.5,
|
|
14.6,
|
|
15.7,
|
|
16.8,
|
|
17.9,
|
|
18.8,
|
|
19.5,
|
|
20,
|
|
20.1,
|
|
20,
|
|
19.5,
|
|
18.8,
|
|
17.9,
|
|
16.8,
|
|
15.7,
|
|
14.6,
|
|
13.5,
|
|
12.8,
|
|
12.4,
|
|
12.1,
|
|
12,
|
|
12.1,
|
|
12.4,
|
|
12.8,
|
|
13.4,
|
|
14,
|
|
14.7,
|
|
15.4,
|
|
16.1,
|
|
16.6,
|
|
17,
|
|
17.3,
|
|
17.4,
|
|
17.3,
|
|
17,
|
|
16.6,
|
|
16.1,
|
|
15.4,
|
|
14.7,
|
|
14,
|
|
13.4,
|
|
10.2,
|
|
9.8,
|
|
9.5,
|
|
9.4,
|
|
9.5,
|
|
9.8,
|
|
10.2,
|
|
10.9,
|
|
11.5,
|
|
12.3,
|
|
13.1,
|
|
13.8,
|
|
14.4,
|
|
14.8,
|
|
15.1,
|
|
15.2,
|
|
15.1,
|
|
14.8,
|
|
14.4,
|
|
13.8,
|
|
13.1,
|
|
12.3,
|
|
11.5,
|
|
10.9,
|
|
9.3,
|
|
8.6,
|
|
8.2,
|
|
8.1,
|
|
8.2,
|
|
8.6,
|
|
9.3,
|
|
10.1,
|
|
11,
|
|
12.1,
|
|
13.1,
|
|
14,
|
|
14.8,
|
|
15.5,
|
|
15.9,
|
|
16,
|
|
15.9,
|
|
15.5,
|
|
14.8,
|
|
14,
|
|
13.1,
|
|
12.1,
|
|
11,
|
|
10.1
|
|
],
|
|
"precipitation": [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0.1,
|
|
0.1,
|
|
0.1,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
2.7,
|
|
2.7,
|
|
2.7,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
1,
|
|
1,
|
|
1,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0.1,
|
|
0.1,
|
|
0.1,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0
|
|
],
|
|
"wind_speed_10m": [
|
|
6,
|
|
6.8,
|
|
7.5,
|
|
8.1,
|
|
8.6,
|
|
8.9,
|
|
9,
|
|
8.9,
|
|
8.6,
|
|
8.1,
|
|
7.5,
|
|
6.8,
|
|
6,
|
|
5.2,
|
|
4.5,
|
|
3.9,
|
|
3.4,
|
|
3.1,
|
|
3,
|
|
3.1,
|
|
3.4,
|
|
3.9,
|
|
4.5,
|
|
5.2,
|
|
8.1,
|
|
8.6,
|
|
8.9,
|
|
9,
|
|
8.9,
|
|
8.6,
|
|
8.1,
|
|
7.5,
|
|
6.8,
|
|
6,
|
|
5.2,
|
|
4.5,
|
|
3.9,
|
|
3.4,
|
|
3.1,
|
|
3,
|
|
3.1,
|
|
3.4,
|
|
3.9,
|
|
4.5,
|
|
5.2,
|
|
6,
|
|
6.8,
|
|
7.5,
|
|
9,
|
|
8.9,
|
|
8.6,
|
|
8.1,
|
|
7.5,
|
|
6.8,
|
|
6,
|
|
5.2,
|
|
4.5,
|
|
3.9,
|
|
3.4,
|
|
3.1,
|
|
3,
|
|
3.1,
|
|
3.4,
|
|
3.9,
|
|
4.5,
|
|
5.2,
|
|
6,
|
|
6.8,
|
|
7.5,
|
|
8.1,
|
|
8.6,
|
|
8.9,
|
|
8.1,
|
|
7.5,
|
|
6.8,
|
|
6,
|
|
5.2,
|
|
4.5,
|
|
3.9,
|
|
3.4,
|
|
3.1,
|
|
3,
|
|
3.1,
|
|
3.4,
|
|
3.9,
|
|
4.5,
|
|
5.2,
|
|
6,
|
|
6.8,
|
|
7.5,
|
|
8.1,
|
|
8.6,
|
|
8.9,
|
|
9,
|
|
8.9,
|
|
8.6,
|
|
6,
|
|
5.2,
|
|
4.5,
|
|
3.9,
|
|
3.4,
|
|
3.1,
|
|
3,
|
|
3.1,
|
|
3.4,
|
|
3.9,
|
|
4.5,
|
|
5.2,
|
|
6,
|
|
6.8,
|
|
7.5,
|
|
8.1,
|
|
8.6,
|
|
8.9,
|
|
9,
|
|
8.9,
|
|
8.6,
|
|
8.1,
|
|
7.5,
|
|
6.8,
|
|
3.9,
|
|
3.4,
|
|
3.1,
|
|
3,
|
|
3.1,
|
|
3.4,
|
|
3.9,
|
|
4.5,
|
|
5.2,
|
|
6,
|
|
6.8,
|
|
7.5,
|
|
8.1,
|
|
8.6,
|
|
8.9,
|
|
9,
|
|
8.9,
|
|
8.6,
|
|
8.1,
|
|
7.5,
|
|
6.8,
|
|
6,
|
|
5.2,
|
|
4.5
|
|
],
|
|
"wind_direction_10m": [
|
|
0,
|
|
7,
|
|
14,
|
|
21,
|
|
28,
|
|
35,
|
|
42,
|
|
49,
|
|
56,
|
|
63,
|
|
70,
|
|
77,
|
|
84,
|
|
91,
|
|
98,
|
|
105,
|
|
112,
|
|
119,
|
|
126,
|
|
133,
|
|
140,
|
|
147,
|
|
154,
|
|
161,
|
|
40,
|
|
47,
|
|
54,
|
|
61,
|
|
68,
|
|
75,
|
|
82,
|
|
89,
|
|
96,
|
|
103,
|
|
110,
|
|
117,
|
|
124,
|
|
131,
|
|
138,
|
|
145,
|
|
152,
|
|
159,
|
|
166,
|
|
173,
|
|
180,
|
|
187,
|
|
194,
|
|
201,
|
|
80,
|
|
87,
|
|
94,
|
|
101,
|
|
108,
|
|
115,
|
|
122,
|
|
129,
|
|
136,
|
|
143,
|
|
150,
|
|
157,
|
|
164,
|
|
171,
|
|
178,
|
|
185,
|
|
192,
|
|
199,
|
|
206,
|
|
213,
|
|
220,
|
|
227,
|
|
234,
|
|
241,
|
|
120,
|
|
127,
|
|
134,
|
|
141,
|
|
148,
|
|
155,
|
|
162,
|
|
169,
|
|
176,
|
|
183,
|
|
190,
|
|
197,
|
|
204,
|
|
211,
|
|
218,
|
|
225,
|
|
232,
|
|
239,
|
|
246,
|
|
253,
|
|
260,
|
|
267,
|
|
274,
|
|
281,
|
|
160,
|
|
167,
|
|
174,
|
|
181,
|
|
188,
|
|
195,
|
|
202,
|
|
209,
|
|
216,
|
|
223,
|
|
230,
|
|
237,
|
|
244,
|
|
251,
|
|
258,
|
|
265,
|
|
272,
|
|
279,
|
|
286,
|
|
293,
|
|
300,
|
|
307,
|
|
314,
|
|
321,
|
|
200,
|
|
207,
|
|
214,
|
|
221,
|
|
228,
|
|
235,
|
|
242,
|
|
249,
|
|
256,
|
|
263,
|
|
270,
|
|
277,
|
|
284,
|
|
291,
|
|
298,
|
|
305,
|
|
312,
|
|
319,
|
|
326,
|
|
333,
|
|
340,
|
|
347,
|
|
354,
|
|
1
|
|
]
|
|
}
|
|
}
|