R 设置并保存要稍后显示的GGPLOT
我有一堆代码,它们通过一堆数据循环生成一系列摘要指标。我还想生成一系列绘图,然后将其放入我在循环外选择的网格中。这在R中可能吗 这里有一个非常简单的例子来说明我的意思R 设置并保存要稍后显示的GGPLOT,r,ggplot2,R,Ggplot2,我有一堆代码,它们通过一堆数据循环生成一系列摘要指标。我还想生成一系列绘图,然后将其放入我在循环外选择的网格中。这在R中可能吗 这里有一个非常简单的例子来说明我的意思 it = 0 while (it < 5){ myX = runif(10) myY = runif(10) df = data.frame(x,y) plt[it] = ggplot(data = df, aes(myX, myY)) + geom_point(size = 2, color = "
it = 0
while (it < 5){
myX = runif(10)
myY = runif(10)
df = data.frame(x,y)
plt[it] = ggplot(data = df, aes(myX, myY)) + geom_point(size = 2, color = "blue")
it = it + 1
}
it=0
而(它<5){
myX=runif(10)
myY=runif(10)
df=数据帧(x,y)
plt[it]=ggplot(数据=df,aes(myX,myY))+geom_点(大小=2,color=“蓝色”)
it=it+1
}
然后我想把plt组织成一个网格
(虽然这似乎没有产生情节,但不确定原因)
然后,我可以通过调用plt[2]或其他方式显示每个图,将它们放入网格中,组织它们等等。我对ggplot非常陌生,只是一个基本的R用户,所以如果我错过了显而易见的东西,我深表歉意。甚至不知道用什么语言来搜索这个
也很高兴被告知这是一个糟糕的方法,有一个更好的方法来创建情节。我希望在循环之外执行此操作,因为我希望在决定如何排列结果之前检查结果。您可以将结果存储在列表中。要更正
while
循环,您可以执行以下操作:
library(ggplot2)
plt <- vector('list', 4)
it = 1
while (it < 5){
myX = runif(10)
myY = runif(10)
df = data.frame(myX,myY)
plt[[it]] = ggplot(data = df, aes(myX, myY)) +
geom_point(size = 2, color = "blue")
it = it + 1
}
您可以使用plt[[1]]
、plt[[2]]
等访问单个绘图
create_plot <- function() {
myX = runif(10)
myY = runif(10)
df = data.frame(myX,myY)
ggplot(data = df, aes(myX, myY)) + geom_point(size = 2, color = "blue")
}
plt <- replicate(4, create_plot(), simplify = FALSE)