Skip to main content

Python tools for obtaining and working with ICESat-2 data

All Contributors GitHub license Conda install Pypi install

JOSS publication link and DOI Zenodo all-versions DOI for icepyx

Latest release (main branch): Docs Status main Unit Tests Status (main) Integration Tests Status (main) Code Coverage main

Current development version (development branch): Docs Status dev Unit Tests Status (dev) Integration Tests Status (main) Code Coverage dev pre-commit.ci status

Origin and Purpose

icepyx is both a software library and a community composed of ICESat-2 data users, developers, and the scientific community. We are working together to develop a shared library of resources - including existing resources, new code, tutorials, and use-cases/examples - that simplify the process of querying, obtaining, analyzing, and manipulating ICESat-2 and (via the QUEST module) relevant ancillary datasets to enable scientific discovery.

icepyx aims to provide a clearinghouse for code, functionality to improve interoperability, documentation, examples, and educational resources that tackle disciplinary research questions while minimizing the amount of repeated effort across groups utilizing similar datasets. icepyx also hopes to foster collaboration, open-science, and reproducible workflows by integrating and sharing resources.

Many of the underlying tools from which icepyx was developed began as Jupyter Notebooks developed for and during the cryosphere-themed ICESat-2 Hackweek at the University of Washington in June 2019 or as scripts written and used by the ICESat-2 Science Team members. Originally called icesat2py, the project combined and generalized these scripts into a unified framework, adding examples, documentation, and testing where necessary and making them accessible for everyone. Similar scripts were conceived at the 2021 Hackweek, which in turn led to the development of QUEST. icepyx is now a domain-agnostic, standalone software package and community (under the broader icesat2py GitHub organization) that continues to build functionality for obtaining and working with ICESat-2 data products locally and in the cloud. It also improves interoperability for ICESat-2 datasets with other open-source tools.

Installation

The simplest way to install icepyx is by using the conda package manager. Conda install

conda install icepyx

Alternatively, you can also install icepyx using pip. Pypi install

pip install icepyx

More detailed instructions for installing icepyx can be found at https://icepyx.readthedocs.io/en/latest/getting_started/install.html

Quick Start

import icepyx as ipx
query = ipx.Query(
    # Collection short name
    "ATL06",
    # Bounding box
    [-55, 68, -48, 71],
    # Time bounds
    ['2019-02-20','2019-02-28'],
)
query.download_granules('/tmp/icepyx')
$ ls -1 /tmp/icepyx/
processed_ATL06_20190221121851_08410203_006_02.h5
processed_ATL06_20190222010344_08490205_006_02.h5
processed_ATL06_20190225121032_09020203_006_02.h5
processed_ATL06_20190226005526_09100205_006_02.h5

See the examples below for more things icepyx can do!

Examples (Jupyter Notebooks)

Listed below are example Jupyter notebooks for working with ICESat-2 (IS2).

IS2_data_access

IS2_data_access2_subsetting

IS2_data_variables

IS2_data_visualization

IS2_data_read-in

IS2_cloud_data_access

QUEST_Finding_Argo_IS2_data

Citing icepyx

This community and software is developed with the goal of supporting science applications. Thus, our contributors (including those who have developed the packages used within icepyx) and maintainers justify their efforts and demonstrate the impact of their work through citations. Please see CITATION.rst for additional citation information.

Contact

Working with ICESat-2 data and have ideas you want to share? Have a great suggestion or recommendation of something you’d like to see implemented and want to find out if others would like that tool too? Come join the conversation at: https://discourse.pangeo.io/. Search for “icesat-2” under the “science” topic to find us.

Contribute

We welcome and invite contributions to icepyx from anyone at any career stage and with any amount of coding experience! Check out our contribution guidelines to see how you can contribute.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. Contributor Covenant

Research notice

Please note that this repository is participating in a study into sustainability of open source projects. Data will be gathered about this repository for approximately the next 12 months, starting from June 2021.

Data collected will include number of contributors, number of PRs, time taken to close/merge these PRs, and issues closed.

For more information, please visit the informational page or download the participant information sheet.

Release files for icepyx 2.0.2

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

Source distribution (sdist)

Source distribution for icepyx 2.0.2
File Size Uploaded
icepyx-2.0.2.tar.gz 85.5 kB Details

Built distribution (wheel)

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

Total release size: 163.8 kB

Release files / icepyx-2.0.2.tar.gz

Download URL icepyx-2.0.2.tar.gz
Size 85.5 kB
Tags Source
SHA-256 checksum
How to use checksums
92f848463cb0a1f0b3ac6090b9868a8d24e9efbd46f7694de2c159368eb12df6
BLAKE2b-256 checksum
How to use checksums
06c731c613680118b23afba841fa6b33a76ef04928867276362a77acd0ccd91c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 16, 2026.

Transparency log

Release files / icepyx-2.0.2-py3-none-any.whl

Download URL icepyx-2.0.2-py3-none-any.whl
Size 78.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
01f5569b657b31149481a252ef054e92ba57b516f9eca184d84b36c7def98317
BLAKE2b-256 checksum
How to use checksums
fddc6d0518e27d57336ab61d9d060d9a1ff30025db9304910d437cf1bd6ed00f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 16, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.0.2 This release

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.0

2 release files

0.0.11

1 release file

0.0.2

2 release files

0.0.1

2 release files

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