Información Personal

Nombre: Daniel Alejandro Barrientos Anariba Número de Cuenta: 20191000537

# Cargar la base de datos ChickWeight
data("ChickWeight")

# Crear tablas filtradas por tipo de dieta
dieta1 <- subset(ChickWeight, Diet == 1)
dieta2 <- subset(ChickWeight, Diet == 2)
dieta3 <- subset(ChickWeight, Diet == 3)
dieta4 <- subset(ChickWeight, Diet == 4)

# Crear factores a partir de la columna Time
factor1 <- as.factor(dieta1$Time)
factor2 <- as.factor(dieta2$Time)
factor3 <- as.factor(dieta3$Time)
factor4 <- as.factor(dieta4$Time)

# Calcular los promedios de los pesos diarios usando tapply
promedios_dieta1 <- tapply(dieta1$weight, factor1, mean)
promedios_dieta2 <- tapply(dieta2$weight, factor2, mean)
promedios_dieta3 <- tapply(dieta3$weight, factor3, mean)
promedios_dieta4 <- tapply(dieta4$weight, factor4, mean)

# Convertir las salidas a vectores numéricos
vector_promedios_dieta1 <- as.numeric(promedios_dieta1)
vector_promedios_dieta2 <- as.numeric(promedios_dieta2)
vector_promedios_dieta3 <- as.numeric(promedios_dieta3)
vector_promedios_dieta4 <- as.numeric(promedios_dieta4)
# Convertir los datos en data frames adecuados para ggplot
df1 <- data.frame(Time = unique(dieta1$Time), Peso = vector_promedios_dieta1, Dieta = "Dieta1")
df2 <- data.frame(Time = unique(dieta2$Time), Peso = vector_promedios_dieta2, Dieta = "Dieta2")
df3 <- data.frame(Time = unique(dieta3$Time), Peso = vector_promedios_dieta3, Dieta = "Dieta3")
df4 <- data.frame(Time = unique(dieta4$Time), Peso = vector_promedios_dieta4, Dieta = "Dieta4")

# Combinar los data frames
df <- rbind(df1, df2, df3, df4)

El gráfico

ggplot(df, aes(x = Time, y = Peso, color = Dieta, group = Dieta)) +
  geom_line() +
  geom_point() +
  labs(title = "Crecimiento promedio en función de la dieta",
       x = "Días",
       y = "Pesos (gramos)",
       color = "Leyendas") +
  theme_minimal() +
  theme(legend.position = "right")

Gráfico personalizado

ggplot(df, aes(x = Time, y = Peso, color = Dieta, shape = Dieta, group = Dieta)) +
  geom_line(linewidth = 1) +  # Cambiado de size a linewidth
  geom_point(size = 3) +
  scale_color_manual(values = c("Dieta1" = "red", "Dieta2" = "green", "Dieta3" = "blue", "Dieta4" = "purple")) +
  labs(title = "Crecimiento promedio en función de la dieta",
       x = "días",
       y = "Pesos (gramos)",
       color = "Leyendas",
       shape = "Leyendas") +
  theme_minimal() +
  theme(legend.position = "right")