I am new to ggplot2 and I am having difficulties to make a barplot for each gene by 2 factors.
I would like to plot each gene individually by 2 factors: "cell_type" and "age".
The x-axis would represent "cell type" (6) categories and inside each "cell type" category should be 5 bars representing the "age" categories. The y-axis would represent the gene expression values (mean + error bars).
My code:
mat= t(exprs(eSet))
colnames(mat) = fData(eSet)$Symbol
rownames(mat = pData(eSet)$genotype
GENOTYPE <- rownames(mat)
AGE <- pData(eSet)$age
d.f_all_genes2 <- data.frame(GENOTYPE, AGE, mat)
d.f_all_genes2[1:3,1:10]
GENOTYPE AGE X1.2.SBSRNA4 A1BG A1BG.AS1 A1CF A2LD1 A2M A2ML1 A2MP1
1 rag_a 54 0 0 0 0 0 0 0 0
2 rag_wt 54 0 0 0 0 0 18 0 0
3 wt_wt 54 0 0 0 0 0 1 0 0
melted <- melt(d.f_all_genes2, id.vars="GENOTYPE")
head(melted)
GENOTYPE variable value
1 rag_a AGE 54
2 rag_wt AGE 54
3 wt_wt AGE 54
Unfortunately, I lost all the genes.
I was also planning to do the followings:
means <- ddply(melted, c("AGE", "variable"), summarise, mean=mean(value))
means.sem <- ddply(melted, c("AGE", "variable"), summarise, mean=mean (value),sem=sd(value)/sqrt(length(value)))
means.sem <- transform(means.sem, lower=mean-sem, upper=mean+sem)
ggplot(means[means$variable == "GENE of Interest=Symbol",], aes(x = factor(AGE), y = mean)) + geom_bar(stat= "identity", colour = "blue", outlier.shape = NA)+ facet_grid(~GENOTYPE) + facet_wrap(~variable) + ylab(expression(paste(Log[2], " Expression Values"))) + theme(axis.text=element_text(size=13, color="black"),axis.title=element_text(size=12, face="bold",color="black"), plot.title=element_text(size=14,face="bold", color="black"), strip.text.x = element_text(colour = "black", face= "bold",angle = 0, size = 20))
Any advice and help how to make it work are highly appreciated.
Thanks a lot in advance.