Representar un polígono coloreado en ggplot2
Estoy utilizando el paquete statspat porque estoy trabajando en patrones espaciales.
Me gustaría hacerlo en ggplot y con colores en lugar de números (porque no es muy legible),
el siguiente gráfico, producido con la función plot.quadratest: Polygone
Los números que me interesan para la intensidad de los colores son aquellos en la parte inferior de cada caja.
El objeto de prueba contiene los siguientes datos: Test object.
He consultado la ayuda de la función, así como el código de la función, pero aún no puedo manejarlo.
Idealmente, me gustaría que mi figura final se vea así (quizás no con los mismos colores, jaja): Final object
Gracias de antemano por tu ayuda.
davy.ai
Para crear un gráfico similar en ggplot con colores en lugar de números, podemos seguir los siguientes pasos:
geom_polygon
de ggplot para crear un polígono para cada caja y colorear los polígonos en función de los valores de color.Aquí tienes un código de ejemplo para lograr esto:
“`{r}
library(statspat)
library(ggplot2)
Convertir los datos a un marco de datos
test_df <- as.data.frame(as.quad.test(object))
test_df$box_id <- 1:nrow(test_df)
Calcular los valores de color usando una escala de colores
color_scale <- scale_fill_gradient(low = “white”, high = “red”)
color_values <- colorScale(test_df$counts, color_scale)
Crear el gráfico utilizando ggplot y geom_polygon
ggplot(test_df, aes(x = x, y = y, group = box_id, fill = color_values)) +
geom_polygon() +
coord_equal() +
theme_void() +
scale_fill_gradient(low = “white”, high = “red”, name = “Intensidad”)
“`
Esto generará un gráfico similar al que proporcionaste como el objeto “Final” anteriormente. Puedes ajustar la escala de colores y otros aspectos del gráfico a tu gusto.