Skip to main content

Efficient, vectorized geospatial operations in Python.

Project description

geoarrow.rust.core

Python bindings to geoarrow-rs

Overview

This library contains Python bindings to the GeoArrow Rust implementation.

  • Fast: Connects to algorithms implemented in GeoRust, which compile to native code.
  • Parallel: Multi-threading is enabled out-of-the-box for all operations on chunked data structures.
  • Self-contained: Zero Python dependencies.
  • Easy to install: Distributed as static binary wheels with zero C dependencies.
  • Strong, static typing: geometry arrays have a known type
  • Interoperable ecosystem: Data is shared at zero cost with other Python libraries in the burgeoning GeoArrow ecosystem, such as geoarrow-c or lightning-fast map rendering.

More specifically, it contains:

  • Classes to represent GeoArrow arrays: PointArray, LineStringArray, etc.
  • Classes to represent chunked GeoArrow arrays: ChunkedPointArray, ChunkedLineStringArray, etc.
  • A spatial table representation, GeoTable, where one column is a geospatial type, to enable future support for geospatial joins.
  • Rust-based algorithms for computations on GeoArrow memory.
  • Rust-based parsers for various geospatial file formats.

Documentation

Refer to the documentation at geoarrow.github.io/geoarrow-rs/python.

Future work:

  • 3D coordinates. Only 2D geometries are supported at this time.
  • More algorithms, including spatial indexes and spatial joins.
  • CRS management. This currently loses the CRS information in the GeoArrow metadata.

Background reading

Refer to the GeoArrow Python module proposal for more background information.

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

geoarrow_rust_core-0.2.0.tar.gz (2.3 MB view hashes)

Uploaded Source

Built Distributions

geoarrow_rust_core-0.2.0-cp38-abi3-win_amd64.whl (10.0 MB view hashes)

Uploaded CPython 3.8+ Windows x86-64

geoarrow_rust_core-0.2.0-cp38-abi3-win32.whl (8.8 MB view hashes)

Uploaded CPython 3.8+ Windows x86

geoarrow_rust_core-0.2.0-cp38-abi3-manylinux_2_28_x86_64.whl (15.4 MB view hashes)

Uploaded CPython 3.8+ manylinux: glibc 2.28+ x86-64

geoarrow_rust_core-0.2.0-cp38-abi3-macosx_11_0_arm64.whl (10.3 MB view hashes)

Uploaded CPython 3.8+ macOS 11.0+ ARM64

geoarrow_rust_core-0.2.0-cp38-abi3-macosx_10_12_x86_64.whl (10.9 MB view hashes)

Uploaded CPython 3.8+ macOS 10.12+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page