Awesome
đ Local Tile Server for Geospatial Rasters
Need to visualize a rather large (gigabytes+) raster? This is for you.
A Python package for serving tiles from large raster files in
the Slippy Maps standard
(i.e., /zoom/x/y.png
) for visualization in Jupyter with ipyleaflet
or folium
.
Launch a demo on MyBinder
Documentation: https://localtileserver.banesullivan.com/
Built on rio-tiler
đ Highlights
- Launch a tile server for large geospatial images
- View local or remote* raster files with
ipyleaflet
orfolium
in Jupyter - View rasters with CesiumJS with the built-in web application
*remote raster files should be pre-tiled Cloud Optimized GeoTiffs
đ Usage
Usage details and examples can be found in the documentation: https://localtileserver.banesullivan.com/
The following is a minimal example to visualize a local raster file with
ipyleaflet
:
from localtileserver import get_leaflet_tile_layer, TileClient
from ipyleaflet import Map
# First, create a tile server from local raster file
client = TileClient('path/to/geo.tif')
# Create ipyleaflet tile layer from that server
t = get_leaflet_tile_layer(client)
m = Map(center=client.center(), zoom=client.default_zoom)
m.add(t)
m
âšī¸ Overview
The TileClient
class can be used to to launch a tile server in a background
thread which will serve raster imagery to a viewer (usually ipyleaflet
or
folium
in Jupyter notebooks).
This tile server can efficiently deliver varying resolutions of your raster imagery to your viewer; it helps to have pre-tiled, Cloud Optimized GeoTIFFs (COGs).
There is an included, standalone web viewer leveraging CesiumJS.
âŦī¸ Installation
Get started with localtileserver
to view rasters in Jupyter or deploy as your
own Flask application.
đ Installing with conda
Conda makes managing localtileserver
's dependencies across platforms quite
easy and this is the recommended method to install:
conda install -c conda-forge localtileserver
đĄ Installing with pip
If you prefer pip, then you can install from PyPI: https://pypi.org/project/localtileserver/
pip install localtileserver
đ Feedback
Please share your thoughts and questions on the Discussions board. If you would like to report any bugs or make feature requests, please open an issue.
If filing a bug report, please share a scooby Report
:
import localtileserver
print(localtileserver.Report())