Мне нужно, чтобы эти две вещи произошли:
Слой (карта) 1: Эти элементы карты в легенде не должны иметь границу (цвет = NA)!
Слой (карта) 2: Этот элемент карты в легенде должен иметь красную границу (color = "red").
Проблема: Когда я добавляю «слой 2», все элементы карты в легенде «слоя 1» также меняют свою границу на красный.
Примечание: это происходит только в легенде! Границы карты не меняются, они отображаются правильно.
Вот пример для запуска в R:
Работает только слой 1, правильно, элементы на карте и легенда имеютбез цвета рамки:
library("sf"); library("ggplot2")
library("rnaturalearth"); library("rnaturalearthdata") #packages containing the example layers
layer1 <- ne_countries(returnclass = "sf")
ggplot() +
geom_sf(data = layer1, #layer 1
aes(fill = as.factor(region_un)), # example of variable
colour = NA) # removing the borders
Слой 1 без цвета рамки в элементе легенды:
Однако при добавлении второго слоя все элементыиметь красную рамку, включая слой 1:
layer2 <- layer1[layer1$region_un == "Africa", ] # layer 2
ggplot() +
geom_sf(data = layer1, #layer 1
aes(fill = as.factor(region_un)),
colour = NA) + # removing the borders
geom_sf(data = layer2 , #layer 2
aes(fill = region_wb),
alpha = 0, # transparent fill
colour = "red") # red border line
слой 1 и слой 2, со всеми элементами легенды с красным цветом рамки: