Inspired by @pnorman’s animation, here’s a year of daily OpenStreetMap tile traffic. One frame per UTC day, from the start of September 2022 through end of August 2023. It’s from the public log aggregates, so some low-traffic tiles are left out for (I assume) efficiency and privacy.
The answers to your questions are:
1. Yacht and rally car races.
2. Yes, well noticed! We call it “Null Island”.
3. No, but it would be nice if it were practical.
4. People scraping tiles.
5. Yes, because the distribution of traffic follows Zipf’s law.
6. If I have time.
Same general idea and source data, but this time it’s just z-score (https://en.wikipedia.org/wiki/Standard_score), with red positive and green negative. Hard to say that this makes it easier to spot the interesting anomalies, but it seemed like the common sense thing to try. You can see the the OceanGate incident, the earthquake in Turkey and Syria, probably some festivals, etc.
Ideally you’d have this over a basemap and with both dimensions (number of views and view anomaly) visible, but I will generously allow someone else to worry about that.
Well, that’s enough of that.
Okay, fine, @jonty cajoled me into it. Lighter is more traffic; warmer is more positive anomaly for the day.
Now, certain nerds and haters might squint at this and say “It looks like you did this in oklab color space and then tried to half-ass some gamut mapping when you remembered that a lot of the highest z scores are in places with very low traffic counts!” and I would rebut that in scrupulous detail with one simple argument: Good night.
@vruba I like it! I love happy accidents like this and the palette is remarkable.
@vruba Juuuuuuuuust right.
@vruba Spectacular work
@vruba I mean I was going to say, (I wasn't but it's fun to think I could've if I knew how, so I'll just say, wow! cool!).
@vruba I like the rays fanning out from null island that are likely leaflet panning to the desired location.
@vruba Yep those are my questions!
@vruba Any idea what those hotspots in the far southern Indian Ocean are? Subantarctic islands?
@kb Certainly a few islands, but I think maybe also an Antarctic base or two? I can check in my morning.
@vruba Ah, that would make sense, if that's the edge of Antarctica. I was having trouble filling it in mentally.
@kb As I look more closely now, I think you can distinctly see McMurdo due south of NZ.
@vruba is "people scrapping tiles" the answer to the vertical or horizontal lines?
If so, what would then be the diagonal lines stemming from null island? Surely relocating something to its proper address or any similar operation would not trigger intermediate tiles, so I'm at a loss regarding what's happening there...
@tfardet I don’t know about the vertical and horizontal “diffraction spike” lines; I’m curious about those too. Scraping generally looks like rectangles and is far more visible in @pnorman’s hourly visualization. The Null Island radiants are, I’ve been told, relocations that improperly do a smooth pan instead of teleporting directly from Null Island to somewhere actually intended. So you’re right that they shouldn’t request intermediate tiles, but they do.
@vruba I can guess the questions for the first four answers, but…
@mirabilos “Are the tile counts nonlinearly scaled for coloring?” and “Why don’t you try [something else]?”
@vruba thanks, this even got me into learning about Zipf’s law a bit.
@vruba this is fantastic!
@vruba My question is: where did you get the idea to use OSM tile traffic data as seed conditions for Conway's Game of Life?
@alan I feel like this could be the seed for a legitimate geography paper in like 1977.
@vruba the yacht races are spectacular
@vruba the pulsing happens in week(end) freuency I guess?
@vruba Ah, the lodestar of null island. A shining beacon of hope and http requests.
@vruba The route of The Ocean Race is clearly visible. Their public yacht tracker used OSM as one of the map options.
@vruba What did you use and what settings to encode the video? That's the problem I've always had, I can't find a good ffmpeg command line to encode it.
Are you doing color based on log(requests) or scaling a different way?
@pnorman This seemed to work acceptably: ffmpeg -r 15 -f image2 -pattern_type glob -i "png10/*.png" -vcodec libx264 -tune grain -crf 15 -pix_fmt yuv420p -movflags +faststart osm.mp4
And the value scaling is basically log8, entirely ad-hoc.
@vruba I’m loving the artifact from (0,0).
This is a hometown instance run by Sam and Ingrid, for some friends.