[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