{
return Plot.plot({
color: { interpolate: sequence(terrainClrs) },
marks: [
Plot.raster(dem.values, {
width: dem.nCols,
height: dem.nRows,
opacity: 0.4
}),
Plot.raster(relief.values, {
width: relief.nCols,
height: relief.nRows,
fill: d3.interpolate("black", "white"),
mixBlendMode: "luminosity"
}),
Plot.contour(dem.values, {
width: dem.nCols,
height: dem.nRows,
blur: 2,
thresholds: d3.range(0, 1000, 50),
opacity: 0.05
}),
Plot.contour(dem.values, {
width: dem.nCols,
height: dem.nRows,
blur: 2,
opacity: 0.1,
thresholds: d3.range(0, 1000, 200)
})
]
});
}