⚠️ Breaking Change in v0.1.0A major refactor was released in v0.1.0, introducing breaking changes to the Xee API. In most cases, existing code written for pre-v0.1.0 versions will require updates to remain compatible.
- See the Migration Guide for details on updating your code.
- If you need more time to migrate, you can pin your environment to the latest pre-v0.1.0 release.
Xee is an Xarray backend for Google Earth Engine. Open ee.Image / ee.ImageCollection objects as lazy xarray.Datasets and analyze petabyte‑scale Earth data with the scientific Python stack.
pip install --upgrade xeeor
conda install -c conda-forge xeeimport ee
import xarray as xr
from xee import helpers
# Authenticate once (on a persistent machine):
# earthengine authenticate
project = 'PROJECT-ID' # Set your Earth Engine registered Google Cloud project ID
# Initialize (high‑volume endpoint recommended for reading stored collections)
ee.Initialize(project=project, opt_url='https://earthengine-highvolume.googleapis.com')
# Open a dataset by matching its native grid
ic = ee.ImageCollection('ECMWF/ERA5_LAND/MONTHLY_AGGR')
grid = helpers.extract_grid_params(ic)
ds = xr.open_dataset(ic, engine='ee', **grid)
print(ds)Next steps:
- Quickstart: docs/quickstart.md
- Concepts (grid params, CRS, orientation): docs/concepts.md
- User Guide (workflows): docs/user-guide.md
- Lazy, parallel pixel retrieval through Earth Engine
- Flexible output grid definition (fixed resolution or fixed shape)
- CF-friendly dimension order:
[time, y, x] - Plays nicely with Xarray, Dask, and friends
- Discussions: https://github.com/google/Xee/discussions
- Issues: https://github.com/google/Xee/issues
See docs/contributing.md and sign the required CLA.
SPDX-License-Identifier: Apache-2.0
This is not an official Google product.