Daha çox

R-də SpatialPolygonsDataframe sinifinin bir obyektini necə rasterləşdirmək olar?


Rgdal istifadə edərək R-yə bir çoxbucaqlı şəkilləri oxuduğum zaman, bir sinif obyekti kimi idxal edildiMəkan Poliqonları Dataframe.

Çoxbucağı rasterləşdirməliyəm, ammarasterləşdirmək {raster}funksiyanın bunun olmasını tələb edirMəkan poliqonlarısinif.

Cari məlumat çərçivəsindən onu necə çevirə bilərəm?Məkan poliqonlarısinif?


Yardıma baxınrasterləşdirməkrasterdəki funksiya əslində qəbul edəcəkdirMəkanPolygonsDataFrame.

Ikinci poliqon nümunəsindən uyğundurrasterləşdirməkkömək edin.

Çoxbucaqlı nümunələr yaradın

kitabxana (raster) polys <- spPolygons (rbind (c (-180, -20), c (-140,55), c (10, 0), c (-140, -60), c (-180, - 20)), rbind (c (-10,0), c (140,60), c (160,0), c (140, -55), c (-10,0)), rbind (c (-) 125,0), c (0,60), c (40,5), c (15, -45), c (-125,0)), rbind (c (-180,10), c (0, 90), c (40,90), c (145, -10), c (-25, -15), c (-180,0), c (-180,10)))

SpatialPolygonsDataFrame-ə məcbur edin və məlumat əlavə edin

polys <- as (polys, "SpatialPolygonsDataFrame") polys @ data [, 1] <- runif (nrow (polys)) class (polys)

İndi çoxbucaqlı məlumatları və planı rasterləşdirin. Therraster, rasterləşdirmə funksiyası üçün istinad rasteridir.

r <- raster (ncol = 90, nrow = 45) r.polys <- rasterize (polys, r, field = polys @ data [, 1], fun = "mean", update = TRUE, updateValue = "NA") süjet (r.polis)

Diqqət çəkdiyim bir şey, R 3.2.3 olan pəncərələrin altındakı 2.4-30 rasterdə "sahə" mübahisəsinin sütun indeksini tanımamasıdır (məs., Sahə = 1). Lakin, arqumenti həqiqi vektordan keçirsəm (nümunəmdə olduğu kimi), onda bütün çoxbucaqlılar üçün çıxan rasterə düzgün dəyərlər təyin edir. Bu, sintaksisdən istifadə edərək nümunə ilə asanlıqla yenidən yaradıla bilər:

r.polys <- rasterləşdir (polys, r, field = 1, fun = "mean", update = TRUE, updateValue = "NA") '


Videoya baxın: Sabit cərəyan və Dəyişən cərəyan (Oktyabr 2021).