An open-source tool for downloading Overture Maps data with quality of life features
Project description
Generated using DALL·E 3 model with this prompt: Cute stylized conducting virtuoso using a paper map as music sheet. White background, minimalistic, vector graphics, clean background, encased in a circle. In navy and gold colours. Logo for a python library, should work well as small icon.
OvertureMaestro
An open-source tool for reading OvertureMaps data with multiprocessing and additional Quality-of-Life features.
What is OvertureMaestro 🎼🌍?
- Scalable reader for OvertureMaps data.
- Is based on top of
PyArrow
[^1]. - Saves files in the
GeoParquet
[^2] file format for easier integration with modern cloud stacks. - Filters data based on geometry.
- Can filter data using PyArrow expressions.
- Utilizes multiprocessing for faster data download.
- Utilizes dedicated index of all features in the Overture Maps dataset to download only specific parts based on the geometry filter.
- Utilizes caching to reduce repeatable computations.
- Can be used as Python module as well as a beautiful CLI based on
Typer
[^3].
[^1]: PyArrow Website [^2]: GeoParquet data format [^3]: Typer docs
Installing
As pure Python module
pip install overturemaestro
With beautiful CLI
pip install overturemaestro[cli]
Required Python version?
OvertureMaestro supports Python >= 3.9
Dependencies
Required:
-
overturemaps (>=0.8.0)
: Reusing oficial CLI library with dedicated schema related functions -
pyarrow (>=16.0.0)
: For OvertureMaps GeoParquet dataset wrangling -
geopandas (>=1.0)
: For returning GeoDataFrames and reading Geo files -
shapely (>=2.0)
: For parsing WKT and GeoJSON strings and filtering data with STRIndex -
geoarrow-rust-core (>=0.3.0)
: For transforming Arrow data to Shapely objects -
pooch (>=1.6.0)
: For downloading precalculated dataset indexes -
rich (>=12.0.0)
: For showing progress bars -
fsspec (>=2021.04.0)
&aiohttp (>=3.8.0)
: For accessing AWS S3 datasets in PyArrow and GitHub files for precalculated datasets -
geopy (>=2.0.0)
: For geocoding of strings
Optional:
-
typer[all] (>=0.9.0)
(click, colorama, rich, shellingham): Required in CLI -
h3 (>=4.0.0b1)
: For reading H3 strings. Required in CLI -
s2 (>=0.1.9)
: For transforming S2 indexes into geometries. Required in CLI -
python-geohash (>=0.8)
: For transforming GeoHash indexes into geometries. Required in CLI -
scikit-learn (>=1.0)
: For clustering geometries when generating release index. Required for generating release index -
polars (>=0.20.4)
: For calculating total bounding box from many bounding boxes. Required for generating release index
Usage
TODO
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file overturemaestro-0.1.0.tar.gz
.
File metadata
- Download URL: overturemaestro-0.1.0.tar.gz
- Upload date:
- Size: 43.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.19.3 CPython/3.12.7 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14175c0a4748298518239ea253f30c4f957e5fae01ab7b1244cbfcfcd08b3a29 |
|
MD5 | 2f7fe9d4969ad2b890a80fc48aada874 |
|
BLAKE2b-256 | 88fb50bad09356e5556faa437957dd63317dacfe0108225ef062855c9dc736f1 |
File details
Details for the file overturemaestro-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: overturemaestro-0.1.0-py3-none-any.whl
- Upload date:
- Size: 32.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.19.3 CPython/3.12.7 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33d4f0eb6effbee286e375d1433819d63ff26da3ea5fa1508e3d838eb6a0f39b |
|
MD5 | 208f3f96bb75e5580cebc5215821d11e |
|
BLAKE2b-256 | fc79c6223cdadbb89366b14aba544e1e9c2d4f03de47e0c772b86e8e999218a0 |