Un gráfico ggplot sobre distancia y tiempo
Un gráfico ggplot sobre distancia y tiempo
Generamos unos datos de antes y después de un tratamiento y se han analizado los tiempos que se tarda en recorrer distintas distancias.
suppressPackageStartupMessages(library(tidyverse)) set.seed(123) datos <- data.frame(distancia=rep(c(10,20,40,70,110),10)) datos$tipo <- c("Antes","Desp.") error <- ifelse(datos$tipo=="Antes",0,0.3) datos$tiempo <- rnorm(length(datos$distancia),mean=datos$distancia + error, sd= sqrt(datos$distancia))
Calculamos los principales estadísticos asociados (media, desviación típica, mediana e intervalo de confianza).
datos_media <- datos %>% group_by(tipo,distancia) %>% summarize(media = mean(tiempo), sd=sd(tiempo), mediana=median(tiempo), n=n(), intconf1=t.test(tiempo)$conf.int[1], intconf2=t.test(tiempo)$conf.int[2]) as.data.frame(datos_media)
`summarise()` regrouping output by 'tipo' (override with `.groups` argument) tipo distancia media sd mediana n intconf1 intconf2 1 Antes 10 9.574699 2.969346 8.22762 5 5.887769 13.26163 2 Antes 20 21.741974 2.088909 22.22646 5 19.148251 24.33570 3 Antes 40 40.712404 7.734282 42.53470 5 31.109024 50.31578 4 Antes 70 68.912959 7.095076 67.44013 5 60.103259 77.72266 5 Antes 110 112.051366 8.551554 111.35598 5 101.433210 122.66952 6 Desp. 10 11.173305 5.082742 12.47767 5 4.862247 17.48436 7 Desp. 20 19.771101 1.204832 19.32519 5 18.275105 21.26710 8 Desp. 40 35.737627 5.577796 37.34861 5 28.811879 42.66338 9 Desp. 70 74.482278 9.140873 71.22604 5 63.132385 85.83217 10 Desp. 110 110.030501 7.676044 106.30959 5 100.499434 119.56157
Representamos visualmente los resultados.
library(ggplot2) ggplot()+ geom_point(aes(y=tiempo,x=distancia,color=tipo),data=datos) + geom_line(aes(y=media,x=distancia,color=tipo),datos_media) + theme_bw() + theme(legend.position = c(0.87, 0.17)) + ylab("Tiempo (segundos)") + xlab("Distancia(metros)") + scale_x_continuous(breaks=c(10,20,40,70, 110))