R tmap дает немного разные экстенты, несмотря на установку bbox - PullRequest
1 голос
/ 08 мая 2020

Я пытаюсь экспортировать несколько графиков с помощью пакета R tmap. Я новичок в использовании tmap.

Я установил две карты, которые должны охватывать одинаковые экстенты, и я использую аргумент bbox для tm_shape с намерением принудительно установить точно такие же экстенты. Мне нужно, чтобы экстент был таким же, как если бы они переходили одну страницу за другой в отчет, чтобы люди могли переключаться между ними и сравнивать, не меняя ничего. Я пробовал формы sp и sf, многоугольники и точки, все дают одно и то же), а другой - с растром.

Я сделал репред, используя данные по умолчанию из tmap. В моих реальных данных растровые данные и данные форм имеют разные источники, но все они находятся в одной CRS.

На двух картах ниже вы можете видеть, что растровая находится ближе к краю, особенно это заметно слева и снизу. Это происходит даже, если я увеличиваю экстент bbox, так что ни один из них не приближается к краю.

Кто-нибудь знает, почему это отличается или как это исправить?

  library(sp)
  library(raster)
  library(sf)
#> Linking to GEOS 3.6.1, GDAL 2.2.3, PROJ 4.9.3
  library(stars)
#> Loading required package: abind
  library(tmap)

data(NLD_muni)
NLD_extent <- raster::extent(NLD_muni)
NLD_rast_ <- st_rasterize(NLD_muni)

st_crs(NLD_rast_) == st_crs(NLD_muni)
#> [1] TRUE
# projection(NLD_muni)

tm_shape(NLD_muni, bbox = NLD_extent,projection = st_crs(NLD_muni)) +
  tm_polygons("population")

tm_shape(NLD_rast_, bbox = NLD_extent,projection = st_crs(NLD_muni)) +
  tm_raster()

Создано 08.05.2020 с помощью пакета REPEX (v0.3.0)

...