[R-es] Patchwork y datos espaciales

Manuel Spínola m@p|no|@10 @end|ng |rom gm@||@com
Mar Jun 6 15:33:22 CEST 2023


Puedes intentar:

library(ggpubr)

ggarrange(nina_plot_1, nina_plot_2, nina_plot_3, nina_plot_4,
common.legend = TRUE)


El mar, 6 jun 2023 a las 6:18, David Camilo Gomez Medina (<
dcgomezme using unal.edu.co>) escribió:

> 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. 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.
> _______________________________________________
> R-help-es mailing list
> R-help-es using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>


-- 
*Manuel Spínola, Ph.D.*
Instituto Internacional en Conservación y Manejo de Vida Silvestre
Universidad Nacional
Apartado 1350-3000
Heredia
COSTA RICA
mspinola using una.cr <mspinola using una.ac.cr>
mspinola10 using gmail.com
Teléfono: (506) 8706 - 4662
Sitio web institucional: ICOMVIS
<http://www.icomvis.una.ac.cr/index.php/manuel>
Sitio web personal: Sitio personal <https://mspinola-sitioweb.netlify.app>
Blog sobre Ciencia de Datos: Blog de Ciencia de Datos
<https://mspinola-ciencia-de-datos.netlify.app>

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20230606/328ac882/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/328ac882/attachment-0001.png>


Más información sobre la lista de distribución R-help-es