In [1]:
Copied!
# %pip install -U leafmap
# %pip install -U leafmap
In [2]:
Copied!
import os
import pandas as pd
import leafmap.maplibregl as leafmap
import os
import pandas as pd
import leafmap.maplibregl as leafmap
In [3]:
Copied!
os.environ["TITILER_ENDPOINT"] = "https://titiler.xyz"
os.environ["TITILER_ENDPOINT"] = "https://titiler.xyz"
Visualizing single band images¶
In this example, we will use the NASA OPERA displacement data to visualize the displacement of the San Francisco area over time. The data is available on Hugging Face at NASA-OPERA.
In [4]:
Copied!
url = "https://huggingface.co/datasets/giswqs/NASA-OPERA/resolve/main/SanFrancisco_OPERA-DISP-S1/filenames.csv"
df = pd.read_csv(url)
df.head()
url = "https://huggingface.co/datasets/giswqs/NASA-OPERA/resolve/main/SanFrancisco_OPERA-DISP-S1/filenames.csv"
df = pd.read_csv(url)
df.head()
Out[4]:
filename | date | url | |
---|---|---|---|
0 | displacement_20160810_20160903.tif | 2016-09-03 | https://huggingface.co/datasets/giswqs/NASA-OP... |
1 | displacement_20160810_20160927.tif | 2016-09-27 | https://huggingface.co/datasets/giswqs/NASA-OP... |
2 | displacement_20160810_20161021.tif | 2016-10-21 | https://huggingface.co/datasets/giswqs/NASA-OP... |
3 | displacement_20160810_20161114.tif | 2016-11-14 | https://huggingface.co/datasets/giswqs/NASA-OP... |
4 | displacement_20160810_20161208.tif | 2016-12-08 | https://huggingface.co/datasets/giswqs/NASA-OP... |
In [5]:
Copied!
dates = df["date"].to_list()
images = df["url"].to_list()
dates = df["date"].to_list()
images = df["url"].to_list()
In [6]:
Copied!
m = leafmap.Map(projection="globe", sidebar_visible=True, layer_manager_expanded=False)
m.add_basemap("USGS.Imagery")
vmin = -0.02
vmax = 0.02
palette = "seismic"
m.add_time_slider(
images,
labels=dates,
vmin=vmin,
vmax=vmax,
colormap_name=palette,
opacity=0.7,
expanded=True,
time_interval=1,
)
m.add_colorbar(vmin=vmin, vmax=vmax, palette=palette, label="Displacement (m)")
m
m = leafmap.Map(projection="globe", sidebar_visible=True, layer_manager_expanded=False)
m.add_basemap("USGS.Imagery")
vmin = -0.02
vmax = 0.02
palette = "seismic"
m.add_time_slider(
images,
labels=dates,
vmin=vmin,
vmax=vmax,
colormap_name=palette,
opacity=0.7,
expanded=True,
time_interval=1,
)
m.add_colorbar(vmin=vmin, vmax=vmax, palette=palette, label="Displacement (m)")
m
In [7]:
Copied!
m.set_terrain()
m.set_terrain()
Visualize multi-band images¶
In [8]:
Copied!
url = "https://huggingface.co/datasets/giswqs/geospatial/resolve/main/landsat/filenames.csv"
df = pd.read_csv(url)
df.head()
url = "https://huggingface.co/datasets/giswqs/geospatial/resolve/main/landsat/filenames.csv"
df = pd.read_csv(url)
df.head()
Out[8]:
filename | year | url | |
---|---|---|---|
0 | 1984.tif | 1984 | https://huggingface.co/datasets/giswqs/geospat... |
1 | 1985.tif | 1985 | https://huggingface.co/datasets/giswqs/geospat... |
2 | 1986.tif | 1986 | https://huggingface.co/datasets/giswqs/geospat... |
3 | 1987.tif | 1987 | https://huggingface.co/datasets/giswqs/geospat... |
4 | 1988.tif | 1988 | https://huggingface.co/datasets/giswqs/geospat... |
In [9]:
Copied!
years = df["year"].to_list()
years = [str(year) for year in years]
images = df["url"].to_list()
years = df["year"].to_list()
years = [str(year) for year in years]
images = df["url"].to_list()
In [10]:
Copied!
m = leafmap.Map(projection="globe", sidebar_visible=True, layer_manager_expanded=False)
m.add_basemap("USGS.Imagery")
m.add_time_slider(
images,
labels=years,
opacity=0.7,
expanded=True,
time_interval=1,
)
m
m = leafmap.Map(projection="globe", sidebar_visible=True, layer_manager_expanded=False)
m.add_basemap("USGS.Imagery")
m.add_time_slider(
images,
labels=years,
opacity=0.7,
expanded=True,
time_interval=1,
)
m