#r #ggplot2 #legend
#r #ggplot2 #легенда
Вопрос:
Я пытаюсь создать «цветной» ключ легенды, который имеет толстую границу независимо от того, насколько она тонкая в соответствующем geom_sf. Эта легенда также должна иметь определенный размер.
library(sf)
library(dplyr)
library(stringr)
nc <- st_read(system.file("shape/nc.shp", package = "sf"))
nc_mod <- nc %>%
mutate(H_IN_NAME = if_else(str_detect(NAME, "h"), TRUE, FALSE))
g_legends <- ggplot(nc_mod)
geom_sf(aes(fill = AREA))
geom_sf(aes(colour = H_IN_NAME), fill = NA, size = 0.2)
g_legends theme(legend.key =
element_rect(size = 9))
Кажется, что на следующем изображении зарезервировано место для размера 7, но оно по-прежнему соответствует geom
размеру для фактического цвета.
g_legends guides(colour = guide_legend(override.aes = list(size = 7, fill = NA)))
Здесь я переопределяю цвет, но, похоже, есть ограничение, поскольку толщина линии не соответствует 7.
Существуют ли какие-либо подобные «ограничения» на размеры различных элементов легенды и как они определяются?
Наконец, когда я добавляю общий размер для ключей легенды (будь то до или после), толщина границы снова игнорируется.
g_legends guides(colour = guide_legend(override.aes = list(size = 7)))
theme(legend.key.size = unit(0.3, "cm"))
Есть ли способ сделать «цветную» легенду, как на втором изображении, или, возможно, немного толще и уменьшить общий размер легенды?
Спасибо!