Skip to main content

tilearray

tilearray turns remote tile services into Dask-backed xarray arrays — one create_array call for WCS, WMS, WMTS, or XYZ. Shared fetch and decode keep mosaics polite to servers and analysis-ready on a laptop or a larger machine.

Tests Docs Build and Publish

Alpha. The API may change. Today WCS, WMS, WMTS, and XYZ share one create_array entry point.

Docs: matthewjwhittle.github.io/tilearray — install, how it works, quick start, usage guides, example sources, troubleshooting, and API.

Install

Python 3.9+. Prefer uv:

uv add tilearray

or:

pip install tilearray

From a clone: uv sync --dev. Contributors: make docs (HTML), make docs-artifacts (regenerate figures).

Quick start

Prefer compute_with_policy over plain .compute() so Dask workers match the fetch ceiling (attrs are read automatically).

XYZ — OpenStreetMap

from tilearray import XYZConfig, compute_with_policy, create_array
from tilearray.types import CRS

config = XYZConfig.for_openstreetmap(zoom=16)
da = create_array(
    config,
    bbox=(-0.005, 51.495, 0.005, 51.505),  # small window near central London
    crs=CRS.EPSG_4326,
)
arr = compute_with_policy(da)
# Palette PNGs decode as single-band; this window is about (1024, 512)
print(arr.shape, da.attrs["service_type"])

Include © OpenStreetMap contributors when displaying map imagery.

WCS — Environment Agency Lidar

from tilearray import WCSConfig, compute_with_policy, create_array
from tilearray.types import CRS, Format

config = WCSConfig.for_ea_dsp(
    "https://environment.data.gov.uk/spatialdata/"
    "lidar-composite-digital-terrain-model-dtm-1m/wcs",
    coverage_id="13787b9a-26a4-4775-8523-806d13af58fc__Lidar_Composite_Elevation_DTM_1m",
    crs=CRS.EPSG_27700,
    output_format=Format.GEOTIFF,
    chunk_size=(800, 800),
    grid_shape=(1, 1),
)
bbox = (431900.0, 382700.0, 432700.0, 383500.0)  # British National Grid
da = create_array(config, bbox, CRS.EPSG_27700)
elevation = compute_with_policy(da)
print(elevation.shape, float(elevation.mean()))

The EA Lidar preset caps sustained concurrency at 10 (AIMD ceiling). More hosts, WMS/WMTS recipes, and polite-use notes live in the docs.

Development

Clone, uv sync --dev, then make test / make lint. Full setup, docs builds, and project conventions: CONTRIBUTING.md.

License

Apache License 2.0 — see LICENSE.

Metadata

Release files for tilearray 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tilearray 0.1.0
File Size Uploaded Provenance Actions
tilearray-0.1.0.tar.gz 1.0 MB Without provenance Details for tilearray-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tilearray 0.1.0
File Interpreter ABI Platform Actions
tilearray-0.1.0-py3-none-any.whl Python 3 none any Details for tilearray-0.1.0-py3-none-any.whl

Total release size: 1.1 MB

Release files / tilearray-0.1.0.tar.gz

Download URL tilearray-0.1.0.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
ec7f28a71709db214c2ec803c83c1eae935833ed5aaf85081d4dc8f2b43f1a0b
BLAKE2b-256 checksum
How to use checksums
7ce5d02fb95bae92282f37631560204d89259bd6e70e198e3427bae4147becb3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / tilearray-0.1.0-py3-none-any.whl

Download URL tilearray-0.1.0-py3-none-any.whl
Size 57.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3499338caa44d8de3d1eb8c1585205f6f76e0ca33a42496e56dc9ddb7e469bd1
BLAKE2b-256 checksum
How to use checksums
a0114703c99a87110cca5ad81968722930de3fbca105bcfe9846f5a01097b35f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for tilearray 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page