wxy command reference

Generated from the help text of wxy 0.0.1, built from wxylib/core@16a14c1. Each section is exactly what wxy <command> --help prints. Worked examples are in the how-tos.

wxy

wxylib from the shell

Usage: wxy <COMMAND>

Commands:
  warp    Warp a GeoTIFF or Zarr array onto a target grid, written as GeoZarr
  points  Read a GeoTIFF or Zarr array at points (x,y lines on stdin), each chunk fetched once; values go to stdout as CSV
  zonal   Summarise a GeoTIFF or Zarr array over GeoJSON polygons (the cells GDAL's rasterizer would burn); statistics go to stdout as CSV
  help    Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

wxy warp

Warp a GeoTIFF or Zarr array onto a target grid, written as GeoZarr

Usage: wxy warp [OPTIONS] --crs <CRS> --extent <XMIN> <YMIN> <XMAX> <YMAX> --size <NCOL> <NROW> <SOURCE> <OUTPUT>

Arguments:
  <SOURCE>  Source: a GeoTIFF file or https:// URL, or a Zarr store directory
  <OUTPUT>  Output Zarr store directory, created if missing

Options:
      --crs <CRS>
          Target CRS as an EPSG:NNNN code, such as EPSG:3031. (The CRS backend also reads PROJ strings, but GeoZarr's proj: has no place to record one; WKT2 and PROJJSON wait on a PROJ-backed CRS.)
      --extent <XMIN> <YMIN> <XMAX> <YMAX>
          Target extent: xmin ymin xmax ymax, in target CRS units
      --size <NCOL> <NROW>
          Target size in cells: ncol nrow
  -r, --resampling <RESAMPLING>
          Resampling method [default: near] [possible values: near, bilinear, cubic]
      --error-threshold <ERROR_THRESHOLD>
          Maximum error of the approximate transformer, in pixels; 0 is exact [default: 0.125]
      --nodata <NODATA>
          Nodata, overriding the source's
      --source-array <SOURCE_ARRAY>
          Array to read when the source is Zarr [default: /data]
      --array <ARRAY>
          Array to write in the output store [default: /data]
      --no-wrap
          Leave target cells beyond a 360 degree lon/lat source's edge empty, as GDAL's warper does, instead of wrapping longitude and reading pole rows
      --plain
          Warp in one pass with a 1:1 kernel instead of chunk by chunk as GDAL's warper does. Faster on large targets, but bilinear and cubic then sample rather than smooth a target coarser than the source
      --overview <OVERVIEW>
          Overview to read from a GeoTIFF with overviews, as gdalwarp's -ovr: auto (the coarsest still finer than the target), auto-N (N levels finer than that), N (overview N, 0 being the first) or none [default: auto]
      --bounds
          Place a curvilinear Zarr source by its CF cell bounds (the cell corners) instead of by its cell centres as GDAL does
      --cache <DIR>
          Keep the source's bytes, as fetched, in this cache directory (append-only Parquet fragments) and read from it what it already holds. GeoTIFF sources (files or URLs; URL rows are validated by the server's etag) and byte-reference tables
      --remap <TARGET>
          For a byte-reference table source, the `remap` target its source paths are rewritten by (such as a mirror, or local copies)
      --wm <WM>
          Working memory one warp chunk may take, in MB, before it is split into smaller chunks (gdalwarp's -wm) [default: 64]
      --overwrite
          Replace the output array if it exists
      --dry-run
          Print the plan as JSON (the chunks it fetches, the bytes that costs, how it is chunked) and stop, reading no data
  -h, --help
          Print help

wxy points

Read a GeoTIFF or Zarr array at points (x,y lines on stdin), each chunk fetched once; values go to stdout as CSV

Usage: wxy points [OPTIONS] <SOURCE>

Arguments:
  <SOURCE>  Source: a GeoTIFF file or https:// URL, or a Zarr store directory

Options:
      --crs <CRS>                    CRS of the points (EPSG:NNNN or a PROJ string) [default: EPSG:4326]
      --source-array <SOURCE_ARRAY>  Array to read in a Zarr source [default: /data]
      --bounds                       Place a curvilinear Zarr source by its CF cell bounds
      --no-wrap                      Leave points beyond a 360 degree lon/lat source's edge off it, as GDAL does, instead of wrapping their longitude
  -r, --resampling <RESAMPLING>      near reads the cell a point falls in (gdallocationinfo); the others interpolate as GDAL's InterpolateAtPoint, empty where it has no value [default: near] [possible values: near, bilinear, cubic, cubicspline]
      --dry-run                      Print the plan as JSON (the chunks it fetches, the bytes that costs, how it is chunked) and stop, reading no data
  -h, --help                         Print help

wxy zonal

Summarise a GeoTIFF or Zarr array over GeoJSON polygons (the cells GDAL's rasterizer would burn); statistics go to stdout as CSV

Usage: wxy zonal [OPTIONS] <SOURCE> <POLYGONS>

Arguments:
  <SOURCE>    Source: a GeoTIFF file or https:// URL, or a Zarr store directory
  <POLYGONS>  GeoJSON: a FeatureCollection, a Feature, or a bare geometry, of Polygon or MultiPolygon

Options:
      --crs <CRS>                    CRS of the polygons (GeoJSON's is lon/lat) [default: EPSG:4326]
      --all-touched                  Every cell a polygon touches, not only those whose centre it covers
      --coverage                     Weight each cell by the fraction of it a polygon covers (exact coverage, as exactextract): count is the covered cells' sum of fractions, sum the fraction-weighted sum
      --source-array <SOURCE_ARRAY>  Array to read in a Zarr source [default: /data]
      --bounds                       Place a curvilinear Zarr source by its CF cell bounds
      --dry-run                      Print the plan as JSON (the chunks it fetches, the bytes that costs, how it is chunked) and stop, reading no data
  -h, --help                         Print help