我有以下 R 脚本:
library(ggplot2)
library(gridExtra)
Sys.setenv(LANG ="en")
c1 <- ggplot(mtcars, aes(factor(cyl))) + geom_bar()
c2 <- ggplot(mtcars, aes(factor(cyl))) + geom_bar() + coord_flip()
grid.arrange(c1, c2, ncols=1)
我在使用 grid.arrange 时遇到以下错误:
arrayGrob(..., as.table = as.table, Clip = Clip, main = 中的错误
main, : 输入必须是 grobs!
我不知道是什么原因导致了这个问题。
这是我使用过的版本:
会话信息()
R版本3.0.2 (2013-09-25)
平台:x86_64-apple-darwin10.8.0(64位)
locale:
[1] de_DE.UTF-8/de_DE.UTF-8/de_DE.UTF-8/C/de_DE.UTF-8/de_DE.UTF-8
attached base packages:
[1] grid stats graphics grDevices utils datasets methods base
other attached packages:
[1] gridExtra_0.9.1 ggplot2_0.9.3.1
loaded via a namespace (and not attached):
[1] colorspace_1.2-4 digest_0.6.4 gtable_0.1.2 labeling_0.2 MASS_7.3-31 munsell_0.4.2 plyr_1.8.1 proto_0.3-10 Rcpp_0.11.1 reshape2_1.2.2
[11] scales_0.2.4 stringr_0.6.2 tools_3.0.2
我喜欢这个特殊的错误,这是一个隐秘的错误。长话短说,参数是ncol
, not ncols
。在你的代码中,1
被视为绘图对象,所以这就是它失败的原因,而不是因为 ggplots 无效。该错误消息没有多大帮助,它掩盖了情况。
# same error as with ncols=1
grid.arrange(c1, c2, blah=1)
# fine
grid.arrange(c1, c2, ncol=1)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)