растеризовать создание GeoTIFF с нулевым значением "линии сетки" - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь на первый взгляд казаться простой задачей преобразования .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

Data Set Screenshot 1

  • .tif с широкими полосамис res = 0.0027 (это приблизительная ширина в градусах плитки Bing в z17, которая является разрешением набора данных о населении)

Data Set Screenshot 2

У меня естьПрочитайте несколько разных страниц документации R с описанием resolution, но я не совсем понимаю его функцию.

Мои вопросы: что делает res и как заменить эти полосы данными, которые принадлежатэти пиксели?

Будьте осторожны: я очень плохо знаком с R.

...