Skip to content

opendatacube/odc-stac

Repository files navigation

odc.stac

Documentation Status Test Status Test Coverage Run Examples in Binder Join Discord for support

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.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