Я пытаюсь на первый взгляд казаться простой задачей преобразования .csv со значениями lat, lon и population в .tif (растр).
Вот мой код R:
geoName <- read.csv("/pathToData/geoName.csv")
geoName_raster <- raster(xmn=min(geoName$longitude), xmx=max(geoName$longitude), ymn=min(geoName$latitude), ymx=max(geoName$latitude), res=0.0027, crs="+proj=longlat +datum=WGS84")
geoName_rasterize <- rasterize(geoName[, c('longitude', 'latitude')], geoName_raster, geoName[, 'population'], fun=sum)
writeRaster(geoName_rasterize, "/pathToData/geoName_rasterize.tif")
CSV форматируется следующим образом:
longitude,latitude,population
-73.274688427539,19.817098050328,100.001
-72.697905721098,19.82226569178,200.002
-73.153838375345,19.799009402678,300.003
-72.71163913536,19.873934311831,400.004
-72.887420723946,19.863602053517,500.005
-73.288421351258,19.850685573779,400.004
-72.752838665811,19.79384121785,300.003
-72.939605787255,19.871351380997,200.002
-73.126372968453,19.713707358991,100.001
Выход имеет полосы нулевых значений, на которые, как представляется, влияет значение res
: полосы находятся дальше друг от друга, когда res
приближается к 0
.
- .tif с узкими полосами ниже без указания
res
- .tif с широкими полосамис
res = 0.0027
(это приблизительная ширина в градусах плитки Bing в z17, которая является разрешением набора данных о населении)
У меня естьПрочитайте несколько разных страниц документации R с описанием resolution
, но я не совсем понимаю его функцию.
Мои вопросы: что делает res
и как заменить эти полосы данными, которые принадлежатэти пиксели?
Будьте осторожны: я очень плохо знаком с R.