# Classify ground
tools.r_mapcalc(expression="landcover = if(canopy, 31)")
# Classify buildings
tools.r_mapcalc(expression="landcover = if(canopy >= 4 && canopy < 10 && ndvi < 0, 24, landcover)")
# Classify trees
tools.r_mapcalc(expression="landcover = if(canopy >= 4 && ndvi >= 0, 42, landcover)")
# Classify shrubs & meadows
tools.r_mapcalc(expression="landcover = if(canopy < 4 && canopy >= 0.5 && ndvi > 0.05, 52, landcover)")
# Classify grasses
tools.r_mapcalc(expression="landcover = if(canopy < 0.5 && ndvi > 0.1, 71, landcover)")
# Classify water
tools.r_mapcalc(expression="landcover = if(isnull(lake), landcover, 11)")
# Set landcover colors
tools.r_colors(map="landcover", color="nlcd")
# Set landcover categories
tools.r_category(map="landcover", separator="pipe", rules=io.StringIO(categories))
# Visualize landcover
m = gj.Map(width=800)
m.d_rast(map="landcover")
m.d_legend(raster="landcover", color="white", at=(75, 95, 1, 3), use=(11,24,31,42,52,71))
m.show()
m.save("images/landcover-01.png")