raster_to_spatialpolygon = function( ras, poly, func=sum ) {
res = crop(ras, poly)
u = rasterize(poly, res)
df=data.frame(uid=1:length(poly))
df$value = sapply( df$uid, FUN=function(x) {i=which(values(u)==x); func(values(res)[i], na.rm=TRUE) } )
row.names(df) = row.names(poly)
pg = SpatialPolygonsDataFrame( poly, df )
pg = sp::spChFIDs( pg, row.names(poly) ) #fix id's
pg$SA = sapply(slot(pg , "polygons"), slot, "area")
return( pg )
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.