# boxplot vertical (una variable)
# Se tiene el siguiente vector con datos del peso (gr) de un determinado producto
peso<- c(131,134,135,138,139,140,140,141,142,142,144,144,
145,146,147,149,149,150,150,151,152,153,155,155,
154,156,156,157,159,160,161,163,163,163,166,167)
# sé genera el diagrama con la función boxplot()
boxplot(peso,
col = "lightblue",
horizontal= F,
ylab="Peso en gramos",
main= " Diagrama de caja para el peso")

# sí queremos mostrar la media y la desviación se hace lo siguiente:
# se calcula la media y su desviación para poder graficar el vector : media +/- SD
# esto permite tener una referencia para trazar la línea en el diagrama de cajas.
media<- mean(peso) ;media
## [1] 149.9167
desv<- sd(peso); desv
## [1] 9.553982
# con el siguiente código se presenta la línea para el intervalo [media +/- DS] en el gráfico
boxplot(peso, col = "lightblue", horizontal= F,
xlab=" ",
ylab="Peso en gramos",
main= " Diagrama de caja y media +/- SD")
points(1, media,pch=8,col="blue2") # ubicación de la media
arrows(1.18,media-desv, 1.18, media+desv,
code=3,length = 0.1, angle = 90,col="red") # intervalo : media+/- SD

# de acuerdo a la regla empírica: el 68% de las observaciones (datos) se encuentran
# en el intervalo --> [media -SD , media+SD] ( la barra roja del grafico)
# Así mismo , es posible represantar el boxplot en forma vertical
# haciendo algunos cambias en el código anterior:
boxplot(peso,
col = "bisque2",
horizontal= T, # boxplot horizontal
ylab=" ",
xlab="Peso en gramos",
main= " Diagrama de caja y media +/- SD")
points(media,1,pch=8,col="blue2") # ubicación de la media
arrows(media-desv,1.17, media+desv,1.17, # intervalo media +/- SD
code=3,
length = 0.1,
angle = 90,
col="red")
