我正在使用它在for循环中将图形打印到PDF,这很好用:
print(ggplot(subdata3, aes(x = Year, y = value, colour = Stat))
+ geom_line() + expand_limits(y=c(0,100))
+ ggtitle(paste0(as.character(ScenName),":\n", as.character(k)))
+ ylab(paste0(j, " (", units, ")")))
现在,我需要将每个ggplot
分配给变量'p',然后将其存储在列表中并由multiplot
用于在页面上排列多个图。
这是我尝试将绘图分配给变量:
p <- ggplot(subdata3, aes(x = Year, y = value, colour = Stat))
+ geom_line() + expand_limits(y=c(0,100))
+ ggtitle(paste0(as.character(ScenName),":\n", as.character(k)))
+ ylab(paste0(j, " (", units, ")"))
我做的唯一更改是删除print()
并进行变量分配。之后,我收到此错误:
Error in +ggtitle(paste0(as.character(ScenName), ":\n", as.character(k))) :
invalid argument to unary operator
我已尝试对()
的各种集合进行多次调整以尝试找到解决方案,但是,似乎没有任何效果。
有什么想法吗?
答案 0 :(得分:2)
你的+
在错误的地方。试试这个:
p <- ggplot(subdata3, aes(x = Year, y = value, colour = Stat)) +
geom_line() + expand_limits(y=c(0,100)) +
ggtitle(paste0(as.character(ScenName),":\n", as.character(k))) +
ylab(paste0(j, " (", units, ")"))