Explore and adjust Cloud-optimized geotiffs (COGs) in your browser using rasterio and Mapbox GL JS.
You can install rio-glui using pip
pip install -U pip
pip install rio-glui
or install from source:
git clone https://github.com/mapbox/rio-glui.git
cd rio-glui
pip install -e .
Usage: rio glui [OPTIONS] PATH
Rasterio glui cli.
Options:
-b, --bidx BIDX Raster band index
--scale INTEGER Min Max Min and Max data bounds to rescale data from.
--colormap [cfastie|schwarzwald] Rio-tiler compatible colormap name ('cfastie' or 'schwarzwald')
--tiles-format [png|jpg|webp] Tile image format (default: png)
--tiles-dimensions INTEGER Dimension of images being served (default: 512)
--nodata INTEGER Force mask creation from a given nodata value
--gl-tile-size INTEGER mapbox-gl tileSize (default is the same as `tiles-dimensions`)
--port INTEGER Webserver port (default: 8080)
--playground Launch playground app
--mapbox-token TOKEN Pass Mapbox token
--help Show this message and exit.
Example: explore COG hosted on aws
rio glui https://oin-hotosm.s3.amazonaws.com/5ac626e091b5310010e0d482/0/5ac626e091b5310010e0d483.tif
Playground
The --playground option opens a playground template where you an interact with the data to apply rio-color formula.
To create rio-glui friendly files (Cloud-Optimized Geotiff) you can use another rasterio plugin: rio-cogeo. Alternately, you can use GDAL tools:
gdal_translate input.tif output.tif -of COG -co TILING_SCHEME=GoogleMapsCompatible -co COMPRESS=JPEG
This plugin also enables raster visualisation in a Jupyter Notebook using mapboxgl-jupyter
Issues and pull requests are more than welcome.
Dev install & Pull-Request
git clone https://github.com/mapbox/rio-glui.git
cd rio-glui
pip install -e .[dev]
Python3.6 only
This repo is set to use pre-commit to run flake8, pydocstring and black ("uncompromising Python code formatter") when commiting new code.
$ pre-commit install
$ git add .
$ git commit -m'my change'
black....................................................................Passed
Flake8...................................................................Passed
Verifying PEP257 Compliance..............................................Passed
$ git push origin