/odc-stac

Load STAC items into xarray Datasets.

Primary LanguagePythonApache License 2.0Apache-2.0

odc.stac

Documentation Status Test Status Test Coverage Run Examples in Binder

Load STAC items into xarray Datasets. Process locally or distribute data loading and computation with Dask.

Usage

odc.stac.load

catalog = pystac_client.Client.open(...)
query = catalog.search(...)
xx = odc.stac.load(
    query.get_items(),
    bands=["red", "green", "blue"],
)
xx.red.plot.imshow(col="time")

For more details see Documentation and Sample Notebooks, or try it out on Binder.

Installation

Using pip

pip install odc-stac

To install with botocore support (for working with AWS):

pip install 'odc-stac[botocore]'

Using Conda

This package is be available on conda-forge channel:

conda install -c conda-forge odc-stac

From unreleased source

To use development version of odc-stac install dependencies from conda, then install odc-stac with pip.

Sample environment.yml is provided below.

channels:
  - conda-forge
dependencies:
  - odc-geo
  - xarray
  - numpy
  - dask
  - pandas
  - affine
  - rasterio
  - toolz
  - pystac
  - pystac-client
  - pip
  - pip:
    - "git+https://github.com/opendatacube/odc-stac/"

Developing

To develop odc-stac locally using pip (assuming you have virtualenvwrapper installed):

git clone https://github.com/opendatacube/odc-stac
cd odc-stac
mkvirtualenv odc-stac
pip install -e .
pip install -r requirements-dev.txt

Run tests with pytest:

pytest

Linting is provided by mypy, pylint, and black:

black --check .
pylint -v odc
mypy odc