Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
giswqs
GitHub Repository: giswqs/geemap
Path: blob/master/docs/notebooks/103_split_control.ipynb
2313 views
Kernel: Python 3

image image

Creating a split-panel map

This notebook demonstrates how to add a split-panel map with geemap and folium. It also supports streamlit. Note that the ipyleaflet SplitControl does not support streamlit.

Uncomment the following line to install geemap if needed.

# !pip install geemap
import ee import folium import geemap.foliumap as geemap

The split-panel map requires two layers: left_layer and right_layer. The layer instance can be a string representing a basemap, or an HTTP URL to a Cloud Optimized GeoTIFF (COG), or a folium TileLayer instance.

Using basemaps

m = geemap.Map(height=500) m.split_map(left_layer="TERRAIN", right_layer="OpenTopoMap") m

Show available basemaps.

# geemap.basemaps.keys()

Using COG

m = geemap.Map(height=600, center=[39.4948, -108.5492], zoom=12) url = "https://github.com/opengeos/data/releases/download/raster/Libya-2023-07-01.tif" url2 = "https://github.com/opengeos/data/releases/download/raster/Libya-2023-09-13.tif" m.split_map(url, url2) m

Using folium TileLayer

m = geemap.Map(center=[40, -100], zoom=4) url1 = "https://www.mrlc.gov/geoserver/mrlc_display/NLCD_2001_Land_Cover_L48/wms?" url2 = "https://www.mrlc.gov/geoserver/mrlc_display/NLCD_2019_Land_Cover_L48/wms?" left_layer = folium.WmsTileLayer( url=url1, layers="NLCD_2001_Land_Cover_L48", name="NLCD 2001", attr="MRLC", fmt="image/png", transparent=True, ) right_layer = folium.WmsTileLayer( url=url2, layers="NLCD_2019_Land_Cover_L48", name="NLCD 2019", attr="MRLC", fmt="image/png", transparent=True, ) m.split_map(left_layer, right_layer) m

Using Earth Engine layers

m = geemap.Map(center=[39.3322, -106.7349], zoom=10)
srtm = ee.Image("USGS/SRTMGL1_003") hillshade = ee.Terrain.hillshade(srtm)
vis = { "min": 0, "max": 5000, "palette": ["006633", "E5FFCC", "662A00", "D8D8D8", "F5F5F5"], }
left_layer = geemap.ee_tile_layer(hillshade, name="Hillshade") right_layer = geemap.ee_tile_layer(srtm, vis, name="DEM")
m.split_map(left_layer, right_layer) m