Skip to content

feat: Flowmap data preparation and visualization#172

Draft
ilyabo wants to merge 33 commits intomainfrom
flowmap
Draft

feat: Flowmap data preparation and visualization#172
ilyabo wants to merge 33 commits intomainfrom
flowmap

Conversation

@ilyabo
Copy link
Collaborator

@ilyabo ilyabo commented Oct 31, 2025

sqlrooms-flowmap, a Python tool that uses DuckDB with spatial extensions to prepare OD data for tiled serving:

  • Hierarchical clustering: locations are grouped at each zoom level using pixel-radius clustering, creating a hierarchy where clusters merge as users zoom out
  • Nested Hilbert indexing: OD pairs are indexed using a space-filling curve that preserves locality, enabling efficient range queries for tile-based serving
  • Spatio-temporal aggregation: flows are aggregated to match zoom-based clustering, with optional temporal bucketing by hour/day/week
  • Output format: Parquet files ordered by (zoom, hilbert_index) for sequential reads and efficient tile extraction
  •  Browser visualization: SQLRooms + flowmap.gl renders clustered flows with smooth zoom transitions

@ilyabo ilyabo changed the title Flowmap feat: Flowmap data preparation and visualization Nov 30, 2025
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Signed-off-by: Ilya Boyandin <ilyabo@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant