Skip to main content

Mapchete xarray output driver

Project description

This driver enables mapchete to write multidimensional arrays into a tile directory structure.

https://badge.fury.io/py/mapchete_xarray.svg https://travis-ci.org/ungarj/mapchete_xarray.svg?branch=master https://coveralls.io/repos/github/ungarj/mapchete_xarray/badge.svg?branch=master https://img.shields.io/pypi/pyversions/mapchete_xarray.svg

Usage

Example .mapchete file:

process: process.py
zoom_levels:
    min: 0
    max: 12
input:
output:
    format: xarray
    path: /some/output/path
    dtype: uint16
    bands: 3
pyramid:
    grid: geodetic
    metatiling: 2

Example process file:

from dateutil import parser
import numpy as np
import xarray as xr


def execute(mp, stack_height=10):
    # create 4D arrays with current tile shape and dtype
    arrs = [
        np.ones((3, ) + mp.tile.shape, dtype="uint16")
        for _ in range(1, stack_height)
    ]

    # create timestamps for each array
    timestamps = [parser.parse("2018-04-0%s" % i) for i in range(1, stack_height)]

    # build xarray with time axis
    timeseries = xr.DataArray(
        np.stack(arrs), coords={'time': timestamps}, dims=('time', 'bands', 'x', 'y')
    )

    # return to write
    return timeseries

Installation

# install using pip:
pip install mapchete_xarray
# verify driver is vailable ('xarray' should be listed as output format):
mapchete formats

Current Limitations

  • no reprojection allowed

  • when reading from existing output, process metatiling must be smaller than xarray output metatiling

  • only writing to NetCDF files currently implemented

License

MIT License

Copyright (c) 2019 EOX IT Services

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mapchete_xarray-0.2.tar.gz (5.0 kB view hashes)

Uploaded Source

Built Distribution

mapchete_xarray-0.2-py3-none-any.whl (6.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page