Skip to main content

Visualize Cloud Optimized GeoTIFF in browser

Project description


A Rasterio plugin to visualize Cloud Optimized GeoTIFF in browser.

Test Coverage Package version Downloads


You can install rio-viz using pip

$ pip install rio-viz

with 3d feature

# 3d visualization features is optional, you'll need to have `cython==0.28` installed before being able to install `rio-viz["mvt"]`
$ pip install -U pip cython==0.28
$ pip install rio-viz["mvt"]

Built from source

$ git clone
$ cd rio-viz
$ pip install -e .


$ rio viz --help
Usage: rio viz [OPTIONS] SRC_PATH

  Rasterio Viz cli.

  --nodata NUMBER|nan        Set nodata masking values for input dataset.
  --minzoom INTEGER          Overwrite minzoom
  --maxzoom INTEGER          Overwrite maxzoom
  --style [satellite|basic]  Mapbox basemap
  --port INTEGER             Webserver port (default: 8080)
  --host TEXT                Webserver host url (default:
  --mapbox-token TOKEN       Pass Mapbox token
  --no-check                 Ignore COG validation
  --reader TEXT              rio-tiler Reader (BaseReader or AsyncBaseReader). Default is ``
  --layers TEXT              limit to specific layers (indexes, bands, assets)
  --server-only              Launch API without opening the rio-viz web-page.
  --config NAME=VALUE        GDAL configuration options.
  --help                     Show this message and exit.

3D (Experimental)

rio-viz supports Mapbox VectorTiles encoding from a raster array. This feature was added to visualize sparse data stored as raster but will also work for dense array. This is highly experimental and might be slow to render in certain browser and/or for big rasters.

Multi Reader support

rio-viz support multiple/custom reader as long they are subclass of or

# MultiFiles
$ rio viz "cog_band{2,3,4}.tif" \

# Landsat 8 - rio-tiler-pds
$ rio viz LC08_L1TP_013031_20130930_20170308_01_T1 \
  --reader \
  --layers B1,B2 \

# aiocogeo
$ rio viz \
  --reader aiocogeo.tiler.COGTiler


When launching rio-viz, the application will create a FastAPI application to access and read the data you want. By default the CLI will open a web-page for you to explore your file but you can use --server-only option to ignore this.

$ rio viz my.tif --server-only

# In another console
$ curl | jq
  "bounds": [6.608576517072109, 51.270642883468895, 11.649386808679436, 53.89267160832534],
  "band_metadata": [...],
  "band_descriptions": [...],
  "dtype": "uint8",
  "nodata_type": "Mask",
  "colorinterp": [

You can see the full API documentation over

API documentation

Contribution & Development



Created by Development Seed





Project details

Download files

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

Files for rio-viz, version 0.5.0
Filename, size File type Python version Upload date Hashes
Filename, size rio-viz-0.5.0.tar.gz (24.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page