I have the following data frame:
test2 <- data.frame(groups = c(rep(\"group1\",4), rep(\"group2\",4)),
X2 = c(rnorm(4), rnorm(4)) ,
label = c(re
Try using ggpubr. It creates ggplot2-like charts.
library(ggpubr)
ggbarplot(test2, x = "label", y = "X2",
add = "mean", fill = "groups")
Alternatively, add a facet:
ggbarplot(test2, x = "label", y = "X2",
add = "mean", fill = "groups",
facet.by = "groups")
ggplot2
likes 1 data point for 1 plot point. Create a new data frame with your summary statistics, then plot with stat="identity"
require(reshape2)
plot.data <- melt(tapply(test2$X2, test2$groups,mean), varnames="group", value.name="mean")
ggplot(plot.data, aes(x=group,y=mean)) + geom_bar(position="dodge", stat="identity")
simply use stat = "summary"
and fun.y = "mean"
ggplot(test2) +
geom_bar(aes(label, X2, fill = as.factor(groups)),
position = "dodge", stat = "summary", fun.y = "mean")