我希望自动化生成多个ggplot:
通用数据集:
mydata<-data.frame(matrix(rnorm(100),ncol=5))
names(mydata)<-c("Tijd","X1","X2","X3","X4")
指定要包含的变量:
Start=2
Stop=5
保存绘图的列表:
gvec<-vector("list",length=length(Start:Stop))
创建图表:
for(i in Start:Stop){
graphy<-ggplot(mydata,aes_string(x="Tijd",y=names(mydata)[i]))+geom_point()+mytheme
gvec[[i-Start+1]]<-graphy
}
保存图表:
for(i in Start:Stop){
tiff(paste0("Test/Residu/Plots/Prei/mydata.",names(mydata)[i],"09.14.tiff"),width=720,height=720)
gvec[[i-Start+1]]
graphics.off()
}
生成了图形列表;我也可以手动保存这些图形。然而,使用最后一个循环后生成的所有文件都是空白的。我无法弄清楚原因。
根据Roland的建议,我尝试了print(gvec[[i-Start+1]])
,但仍然得到空白文件作为输出。
print(gvec[[i-Start+1]])
- Rolandprint
函数才能将绘图结果显示在设备上(这就是 Roland 所说的)。 - Roman Luštrikprint
函数时,它会生成 4 个 tiff 文件。 - bdemarest