mapas manipulation ggplot change calor r ggplot2

manipulation - mapas en r



mapa de calor con valores(ggplot2) (1)

Esto se ha actualizado para cumplir con los principios de tidyverse y mejorar el uso deficiente de ggplot2

Según el comentario de SlowLeraner, pude hacer esto fácilmente:

library(tidyverse) ## make data dat <- matrix(rnorm(100, 3, 1), ncol=10) ## reshape data (tidy/tall form) dat2 <- dat %>% tbl_df() %>% rownames_to_column(''Var1'') %>% gather(Var2, value, -Var1) %>% mutate( Var1 = factor(Var1, levels=1:10), Var2 = factor(gsub("V", "", Var2), levels=1:10) ) ## plot data ggplot(dat2, aes(Var1, Var2)) + geom_tile(aes(fill = value)) + geom_text(aes(label = round(value, 1))) + scale_fill_gradient(low = "white", high = "red")

He visto mapas de calor con valores realizados en varios sistemas de gráficos R, incluidos celosía y base como esta:

ggplot2 a usar ggplot2 un poco y me gustaría poder hacer un mapa de calor con los valores de celda correspondientes graficados. Aquí está el mapa de calor y un intento de usar geom_text :

library(reshape2, ggplot2) dat <- matrix(rnorm(100, 3, 1), ncol=10) names(dat) <- paste("X", 1:10) dat2 <- melt(dat, id.var = "X1") p1 <- ggplot(dat2, aes(as.factor(Var1), Var2, group=Var2)) + geom_tile(aes(fill = value)) + scale_fill_gradient(low = "white", high = "red") p1 #attempt labs <- c(apply(round(dat[, -2], 1), 2, as.character)) p1 + geom_text(aes(label=labs), size=1)

Normalmente puedo calcular los valores x e y para pasar, pero no sé en este caso, ya que esta información no está almacenada en el conjunto de datos. ¿Cómo puedo colocar el texto en el mapa de calor?