Due to GDPR, you will have to log in with an OSM id to download the full history extracts. User ID’s are personal data.
Process:
The workflow is pretty simple. Osmium-tools provides pretty easy API access to the history files, where you can provide a data, and it will extract what OSM was like at that date. We simply need to loop through the desired dates we want to extract, and pipe the results into a workflow that loads the data into PostgreSQL. The final step is simply rendering in QGIS using the time manager plugin.
From these we can produce a GIF of hourly precipitation:
And total precipitation:
Particularly the hurricane path was possible to create in QGIS using the Atlas Generator, and the excellent new:ish geometry generator. This can be found as an option for any layers symbology, as one of the renderers.
For my map I had a non spatial table that drove my atlas. This was a log table of all of the hours of precipitation I had loaded into my database. So I looped through each entry and showed the corresponding points of hourly precipitation for the corresponding hour. I also had hurricane path data as points for every 6 hours. So I could use the geometry generator to interpolate points in between known points.
While the query ended up being pretty long it is pretty straightforward.
It only needs to be run when the hour being generated does not end with a 00, 06, 12, or 18, because those are the positions I already know.
For the rest I need to generate two points. One for the previously known point, and one for the next known point.
Then I would create a line between those two points, measure the line, and place a point on the line x times one sixth of the way for the start of the line depending on the hour from the last known point.
Overall I am very impressed and happy with the result. With a bit of data defined rotation the storm progress looks great.