Значения NA растра имеют заполнение при построении в ggplot в сочетании с полигонами sf - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь построить растр и простую функцию в ggplot2, графики для меня просто красивее, чем базовые.

Проблема, с которой я столкнулся, состоит в том, что значения NA растра имеютсерая заливка, и я хочу, чтобы они были прозрачными, имели белый фон и сетку ggplot2

Вот воспроизводимый пример

Загрузка пакетов:

library(sf)
library(raster) 
library(tidyverse)
library(ggspatial)
library(rworldxtra)

Получениеданные:

data("countriesHigh")
Peru <- countriesHigh %>% st_as_sf() %>% filter(ADMIN.1 == "Peru")
PeruRaster <- getData('alt', country='PER', mask=TRUE)

Когда я пытаюсь построить их вместе, моя главная проблема заключается в том, что фон (данные NA) имеет серую заливку:

ggplot() + geom_sf(data = Peru) + theme_bw() + layer_spatial(PeruRaster)

enter image description here

Есть идеи, как сделать фон прозрачным, чтобы можно было видеть сетку ggplot?

PS: Я также пытаюсь

ggplot() + layer_spatial(PeruRaster) + geom_sf(data = Peru, alpha = 0) + theme_bw() 

сейчас, но график занимает некоторое время

1 Ответ

0 голосов
/ 20 сентября 2018

установите это значение, используя аргумент na.value в scale_fill_continous

ggplot() + geom_sf(data = Peru) + 
  theme_bw() + 
  layer_spatial(PeruRaster) +
  scale_fill_continuous(na.value = "white")
...