Próbuję przekonwertować plik kształtu do rastra w R. Moje podejście polega na tym, aby czytać w rastrze w następujący sposób:
library(rgdal) # Loads SP package by default
demo <- readOGR('F:/data/', 'shapefile') # Creates a SpatialPolygonsDataFrame class (sp)
To działa dobrze i mogę to wykreślić. Jest to jednak duży plik kształtów i chcę przekonwertować go na raster. Próbowałem następujące:
r <- raster(ncol=180, nrow=180)
Demo_ras = rasterize(r, demo, 'pop') # pop is an integer here
Komunikat o błędzie:
Error in function (classes, fdef, mtable) :
unable to find an inherited method for function "rasterize", for signature "RasterLayer", "SpatialPolygonsDataFrame"
Jestem nieco zdezorientowany co do prawidłowej kolejności argumentów. Próbowałem również tego:
Demo_ras = rasterize(demo, r, 'pop')
Co powoduje następujący błąd:
Error in .polygonsToRaster(x, y, ...) :
polygon and raster have no overlapping areas
Chociaż ma sens to, że rastra nie można wygenerować dla obszaru, który nie obejmuje SpatialPolygonsDataFrame, nie jestem pewien, jakie informacje muszę podać, aby raster zawierał ten SpatialPolygonsDataFrameobszar.