Python bindings for H3, a hierarchical hexagonal geospatial indexing system
Install the latest beta version with pip install h3 --pre
or with
pip install 'h3==4.0.0b3'
.
Feedback is welcome via
Issues,
Discussions,
and
Slack.
Python bindings for the H3 core library.
From PyPI:
pip install h3
From conda:
conda config --add channels conda-forge
conda install h3-py
>>> import h3
>>> lat, lng = 37.769377, -122.388903
>>> resolution = 9
>>> h3.latlng_to_cell(lat, lng, resolution)
'89283082e73ffff'
We provide multiple APIs in h3-py
.
Browse a collection of example notebooks, and if you have examples or visualizations of your own, please feel free to contribute!
We also have an introductory walkthrough of the API.
h3-py
wraps the H3 core library,
which is written in C.
The C and Python projects each employ
semantic versioning,
where versions take the form X.Y.Z
.
The h3-py
version string is guaranteed to match the C library string
in both major and minor numbers (X.Y
), but may differ on the
patch (Z
) number.
This convention provides users with information on breaking changes and
feature additions, while providing downstream bindings (like this one!)
with the versioning freedom to fix bugs.
Use h3.versions()
to see the version numbers for both
h3-py
and the C library. For example,
>>> import h3
>>> h3.versions()
{'c': '3.6.3', 'python': '3.6.1'}