【发布时间】:2018-09-10 01:55:37
【问题描述】:
我想制作多个情节。
所以我拆分数据框,并尝试 ggplot。
linkid <- unique (orgin_dat$stdLinkId)
temp <- split(orgin_dat, orgin_dat$stdLinkId)
p1 <- ggplot(temp$`1550007100`, aes(x=datetime, y=linkSpeed)) +
geom_line() +
ggtitle(linkid[i])
## it works
p1 <- ggplot(temp$linkid[1], aes(x=datetime, y=linkSpeed)) +
geom_line() +
ggtitle(linkid[i])
## it doesn't work
我的目标是
for(i in 1:50){
assign(paste(p, i, sep=""),
ggplot(temp$linkid[i], aes(x=datetime, y=linkSpeed)) +
geom_line() +
ggtitle(linkid[i]))
}
## it doesn't work
谢谢。
【问题讨论】:
-
temp$linkid[1]会产生您期望它产生的结果吗?你可能想要temp[linkid[1]]之类的东西,尽管如果不知道temp和linkid的样子,就很难解决确切的问题。 -
您似乎正在尝试将
$和[组合起来以对列表进行子集化?尝试temp[[i]]而不是temp$linkid[i]。我建议使用list来存储绘图,而不是使用assign。如果您发布一个可重现的示例,我可以尝试提供更多帮助(也许使用mtcars内置数据?)。