[R-es] Rellenar espacio entre dos curvas ggplot2

Javier Gómez Gonzalez z@r@g@t@n @end|ng |rom gm@||@com
Mie Mar 20 02:16:13 CET 2019


Estimados amigos:

He realizado un diagrama ombrométrico con ggplot2. En este diagrama la
curva de la temperatura y la precipitación se cortan en dos puntos creando
tres regiones. Necesito rellenar estas tres regiones cada una de un color o
rallado diferente, pero sólo la parte entre las dos curvas y no sé como
hacerlo.

El código empleado es el siguiente:

tem <- c(6.7, 6.3, 7.8, 10.5, 14.0, 18.0, 22.6, 25.9, 25.0, 20.4, 16.1, 9.9)

prec <- c(48.6, 43.5, 46.8, 41.7, 41.4, 27.1, 6.2, 0.2, 4.6, 20.1, 43.3,
54.2)

mes <- c("ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep",
"oct", "nov", "dic")

datos <- data.frame(mes,tem,prec)

# Ordenamos el factor mes

datos$mes <- factor(datos$mes,levels=c("ene", "feb", "mar", "abr", "may",
"jun", "jul", "ago", "sep", "oct", "nov", "dic"))


p1 <-  ggplot() +

  geom_line(aes(x =mes, y = tem, colour = "Temperatura", group=1),
size=0.85,data = datos) +

  labs(title="Diagrama
ombrométrico",x="Mes",y=expression(Temperatura~~"/"~~ºC))+

  theme(plot.title=element_text(hjust =
0.5,size=rel(1.3)))+theme(axis.title=element_text(size=rel(1.1)))+

  theme(axis.text = element_text(size=rel(1)))


p2  <- p1 + geom_line(aes(x =mes, y =prec/2, group=1,colour =
"Precitación"),size=0.85, data = datos) +

  scale_colour_discrete("Type")+ scale_y_continuous(sec.axis =
sec_axis(~.*2, name=expression(precitación~~"/"~~mm)))


p3 <- p2 + guides(colour=guide_legend(title=NULL)) +
theme(legend.position="top")

	[[alternative HTML version deleted]]



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