为什么功能序列不能与ggplot2一起使用?

时间:2015-02-19 11:03:22

标签: r ggplot2 dplyr magrittr

我想使用http://www.r-bloggers.com/magrittr-1-5/中描述的功能序列提取一些绘图代码。但是,它不起作用

require(magrittr); require(ggplot2); require(dplyr)

plot_me <- . %>% (ggplot(aes(Sepal.Width, Sepal.Length)) + geom_point())
iris %>% plot_me

尝试此操作时,R会出现以下错误

  

错误:ggplot2不知道如何处理class uneval的数据

使用简单的管道做同样的工作很好:

iris %>% ggplot(aes(Sepal.Width, Sepal.Length)) + geom_point()

我的功能序列/代码出了什么问题?

1 个答案:

答案 0 :(得分:5)

我无法解释原因,但以下工作。

(可能是因为使用{代替(来控制管道内的计算顺序。)

library(magrittr)
library(ggplot2)

plot_me <- . %>% {ggplot(., aes(Sepal.Width, Sepal.Length)) + geom_point()}
iris %>% plot_me

enter image description here