Puedes seguir el tutorial por vídeo en https://youtu.be/JDsIv3__yTQ
Tratamiento = factor(c(1,2,1,2,1,2),labels=c("Testigo", "Tratado"))
Color = factor(c(1,1,2,2,3,3),labels=c("Verde","Envero","Negra"))
Aceitunas = c(72,33,11,8,17,59)
df=data.frame(Tratamiento,Color,Aceitunas)
df
## Tratamiento Color Aceitunas
## 1 Testigo Verde 72
## 2 Tratado Verde 33
## 3 Testigo Envero 11
## 4 Tratado Envero 8
## 5 Testigo Negra 17
## 6 Tratado Negra 59
#install.packages("ggplot2")
# Si es la primera vez que lo usas, tendrás que instalar primero el paquete.
library (ggplot2) # Después hay que cargarlo cada vez que inicies sesión.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity") +
scale_fill_manual(values=c("darkgreen", "purple","black"))
Hay otra manera de representar los mismos datos para que en vez de aplilados “position=stack()”, queden posicionados unos junto a otros “position=position_dodge()”.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", position=position_dodge()) +
scale_fill_manual(values=c("darkgreen", "purple","black"))
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", position=position_stack()) +
scale_fill_manual(values=c("darkgreen", "purple","black"))
Ademas de apilados o en columnas contiguas, hay otras formas de exponer los datos.
Representa los valores solapados. Esta opción es mucho más interesante en gráficos del tipo histogramas.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", position=position_identity()) +
scale_fill_manual(values=c("darkgreen", "purple","black"))
Se puede comprobar que están solapados si le damos cierto grado de transparencia al color de las barras, mediante el comando “alpha”.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", alpha=0.3, position=position_identity()) +
scale_fill_manual(values=c("darkgreen", "purple","black"))
Hace que las columnas están unas delantes de las otras, como en position=position_identity(), pero para que no queden totalmente solapadas modifica sus anchuras y el punto base, de manera que al menos se pueda ver un poco de cada barra.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", position=position_jitter()) +
scale_fill_manual(values=c("darkgreen", "purple","black"))
Si preferimos que el punto base no se modifique, lo podemos especificar de la siguiente manera.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", position=position_jitter(height=0)) +
scale_fill_manual(values=c("darkgreen", "purple","black"))
Hace que las barras se pongan unas junto a otras, pero de manera irregular.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", position=position_jitterdodge()) +
scale_fill_manual(values=c("darkgreen", "purple","black"))
df$Aceitunas = c(96,30,18,10,20,108)
Entonces la comparación con barra de datos apilados no sería tan eficaz.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", position=position_stack()) +
scale_fill_manual(values=c("darkgreen", "purple","black"))
Para no tener que manipular los datos para averiguar los porcentajes y luego representarlos.
ggplot(data=df, aes(x=Tratamiento, y=Aceitunas, fill=Color)) +
geom_bar(stat="identity", position=position_fill()) +
scale_fill_manual(values=c("darkgreen", "purple","black"))