R在for循环中绘图

时间:2015-01-27 14:11:06

标签: r for-loop plot

我想使用for循环绘制一些数据集。 我使用

制作一个列表
dflist <- c('Set1', 'Set2','Set3', 'Set4')

然后我尝试做:

for (i in dflist) {
   plot(i$var1,i$var2)
}

哪个不起作用。 有人能把我排除在外吗?

2 个答案:

答案 0 :(得分:1)

尝试使用 dflist&lt; -list(set1,set2),否则你会得到dflist中单个var1和var2向量的列表

答案 1 :(得分:1)

您可以使用get来获取与提供的名称相关联的对象。

# two data frames
a = data.frame(x=1:10,y=sqrt(1:10)); b=data.frame(x=1:10,y=exp(1:10))

par(mfrow=c(2,1))
dfs = c('a', 'b')
for (i in dfs){
    plot(get(i)$x, get(i)$y, type='o')
}

apply以避免循环,将自定义函数应用于列表中的每个项目。

par(mfrow=c(2,1))
dflist = list(a,b)
lapply(X=dflist, FUN = function(x) plot(x$x, x$y, type='o')