3

我想使用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 不知道如何处理 uneval 类的数据

使用简单的管道做同样的事情效果很好:

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

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

4

1 回答 1

5

我无法真正解释为什么,但以下工作。

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

library(magrittr)
library(ggplot2)

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

在此处输入图像描述

于 2015-02-19T12:04:07.120 回答