Accessing ICESat-2 Data Using icepyx
Contents
Accessing ICESat-2 Data Using icepyx¶
This notebook illustrates the use of icepyx for programmatic ICESat-2 data query and download from the NASA NSIDC DAAC (NASA National Snow and Ice Data Center Distributed Active Archive Center). A similar data access notebook provides more details on inputs and user options, and a complimentary notebook demonstrates in greater detail the subsetting options available when ordering data.
Polling question
What are the biggest hurdles you face when accessing ICESat-2 (or other) data programmatically?
Motivation and Background¶
icepyx
is a wrapper on top of the NSIDC API, originally created to make programmatic access to ICESat-2 data easier. The library is open-source, community developed and driven, and was created in response to user challenges faced at the 2019 ICESat-2 Cryosphere-themed Hackweek. At that time, the earthdata library had not been developed, and there was a steep learning curve for programmatic access to ICESat-2 data.
The earthdata and icepyx developers are working together to leverage the strengths of each library, ensure compatibility, and reduce duplication of effort by sharing infrastructure (e.g. Earthdata authentication for data access).
Under continuous development, we think you’ll find icepyx
a useful resource and encourage you to contribute your ideas, code, and feedback to enhance its use throughout your entire ICESat-2 workflow. In addition to the programmatic data access presented here, icepyx also includes modules for:
loading data into memory (with plans for lazy loading via Dask)
cloud data access (via a soon-to-be familiar interface)
ICESat-2’s nested data variable management
templates for adding other data sources (QUEST - Query Unify Explore SpatioTemporal; currently finalizing the integration of Argo data as our first example case).
We hope that this year’s Hackweek continues to expand our ICESat-2 data-user community and sparks future feature development, both through hacking projects and beyond.
Computing environment¶
We’ll be using the following open source Python libraries in this notebook:
import icepyx as ipx
%matplotlib inline