我的任务是使用特定数据集中的值(21个值,即21个图)制作多个图。我收到了一个脚本来帮助我,但是我对'gridExtra'软件包和整个p->部分并不熟悉。
有人可以帮我解释一下这段代码,还是建议我如何将单个数据分成单个图形?
library(ggplot2)
library(gridExtra)
data=read.csv("tubgal4crosses.csv")
str(data)
datasum=aggregate(Count~Gene+Sex+Markers,FUN=sum,data=data)
genes=unique(data$Gene)
p<-list()
i=1
while(i<(length(genes)+1)){
p[[i]]<-ggplot(data=subset(datasum,Gene==genes[i]), aes(x=Markers, y=Count, fill=Sex)) +
geom_bar(stat="identity", position=position_dodge())+
theme_minimal()
p[[i]] + scale_fill_manual(values=c('#999999','#E69F00'))
p[[i]] + ggtitle(genes[i])
i=i+1
}
pdf("scop.pdf")
do.call(grid.arrange,p)
dev.off()