如何从包含 R 中数据框列表的列表创建多个图

时间:2021-01-26 14:44:15

标签: r ggplot2

直到现在我都坚持循环并从 List 中保存 ggplot 我看过另一个问题,但它没有用。

myplots=list()

par(mfrow = c(1, 5))
for (i in 1:5) { 
  #name=paste("ggp", i, sep = "_")
  
  p1 =ggplot(Turbine[[i]],
                          aes(x=Turbine[[i]]$TS,
                          y=Turbine[[i]]$Pv..turbine))+
                          geom_point(size=1)+
                          ggtitle(names(Turbine[i])
                          )
  print(i)
  print(p1)
  myplots[[i]]= p1
}
 
multiplot(plotlist=myplots,cols=5)
plot_grid(ggp_1,ggp_2,ggp_3,ggp_4,ggp_5) #trying to save ggplot as variable name

我遇到的问题是当我想在 1 个绘图中开始绘制多个绘图时。我想要 5 列图。

也许是 lapply 功能。好吗?

让数据成为

Turbine=list of listname
first listname= name(Turbine[1])
view(Turbine [[1]]) 
TS Pv..turbine
1   20
2   20
3   24
4   19
   

所以

1 个答案:

答案 0 :(得分:1)

创建类似于您的列表的内容:

Turbine = lapply(1:5,data.frame(TS=1:10,"Pv..turbine"=runif(10))

您可以在 plot_grid 中使用 plotlist= 参数,请注意,您不需要 par(mfrow=..)),这适用于基本 R 图,而且您不需要使用 {{ $ 内的 1}} :

aes