[R-es] Patchwork y datos espaciales
David Camilo Gomez Medina
dcgomezme @end|ng |rom un@|@edu@co
Mar Jun 6 14:17:32 CEST 2023
Buen día a todos, muchas gracias por la ayuda en cuanto a la presentación
de diversos gráficos.
Me gustó mucho el paquete patchwork, lo estoy usando para combinar la
leyenda, pero ha sido difícil. Estoy graficando datos espaciales y no todos
tienen la misma escala de colores, al ocurrir esto, creo que no se puede
combinar la leyenda por medio de plot_layout(guides = 'collect'). ¿Alguien
sabe de casualidad cómo reescalar estos valores y poder tener solo una
leyenda? ¿O también se les ocurre una alternativa para realizar esto? Quedo
muy atento a sus comentarios, gracias.
*Resultado: *
[image: image.png]
*Código:*cpath <- "C:/Users/David
Gomez/Desktop/TESIS/DATOS/Shapes/CUENCA_120m.shp"
border <- st_read(cpath)
font_add(family = "CMU Serif", regular = "cmunrm.ttf")
showtext_auto()
nina_raster <- function(raster_path, title, yr) {
raster_obj <- rast(raster_path) %>%
terra::project("epsg:9377") %>%
raster() %>%
as("SpatialPixelsDataFrame") %>%
as.data.frame()
colnames(raster_obj) <- c("value", "x", "y")
value_min <- min(raster_obj$value, na.rm = TRUE)
value_max <- max(raster_obj$value, na.rm = TRUE)
value_mid <- (value_min + value_max) / 2
plot <- ggplot() +
geom_tile(data = raster_obj, aes(x = x, y = y, fill = value)) +
geom_sf(data = border, fill = NA, color = "black") +
coord_sf() +
scale_fill_viridis(option = "mako",
na.value = "transparent",
breaks = c(value_min, value_mid, value_max),
labels = function(x) sprintf("%.2f", x),
direction = -1) +
labs(title = NULL,
subtitle = NULL,
x = NULL,
y = NULL,
fill = NULL) +
theme_bw() +
theme(text = element_text(family = "CMU Serif", size = 14),
plot.title = element_blank(), #modified
plot.subtitle = element_blank(), #modified
legend.position = "right", #modified
legend.title = element_text(size = 14, face = "bold"),
legend.text = element_text(size = 12),
legend.key = element_rect(colour = "black", linewidth = 0.5),
legend.title.align = 0.5,
axis.text.x = element_blank(),
axis.text.y = element_blank(),
axis.ticks = element_blank(),
axis.title = element_blank()) + #modified
geom_text(x = 0, y = 0, label = "my label",
size = 6, family = "CMU Serif")
return(plot)
}
nina_plot_1 <- nina_raster("RESULTS/REC_A/REC_1/2010-REC_1.tif",
"Chaturvedi Methodology", "2010")
nina_plot_2 <- nina_raster("RESULTS/REC_A/REC_2/2010-REC_2.tif",
"U.P. Irrigation Research Institute
Methodology",
"2010")
nina_plot_3 <- nina_raster("RESULTS/REC_A/REC_3/2010-REC_3.tif",
"Amritsar Methodology", "2010")
nina_plot_4 <- nina_raster("RESULTS/RAS_SCH/REC_A/2010-REC_A.tif",
"Schosinsky and Losilla Methodology", "2010")
--
*Aviso legal:* El contenido de este mensaje y los archivos adjuntos son
confidenciales y de uso exclusivo de la Universidad Nacional de Colombia.
Se encuentran dirigidos sólo para el uso del destinatario al cual van
enviados. La reproducción, lectura y/o copia se encuentran prohibidas a
cualquier persona diferente a este y puede ser ilegal. Si usted lo ha
recibido por error, infórmenos y elimínelo de su correo. Los Datos
Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra
Política de Datos Personales que podrá consultar en la página web
www.unal.edu.co <http://www.unal.edu.co/>.* *Las opiniones, informaciones,
conclusiones y cualquier otro tipo de dato contenido en este correo
electrónico, no relacionados con la actividad de la Universidad Nacional de
Colombia, se entenderá como personales y de ninguna manera son avaladas por
la Universidad.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20230606/8778249e/attachment-0001.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 158397 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20230606/8778249e/attachment-0001.png>
Más información sobre la lista de distribución R-help-es