我要求的功能只是为了方便编程。 使用“+”运算符在ggplot2中添加图层非常棒。特别是在中间添加图层只需添加另一行代码。 但是,如果我想尝试在最后一行之后添加一个图层,我必须在最后一行附加一个“+”,如果我想再次删除该图层,我还必须再次删除“+”:< / p>
ggplot(df, aes(x,y,...)) +
geom_X(...) + # after this line, I can easily add layers
... +
layer_Z(...) # to add a layer after here, I have to modify also this line
我正在搜索一个函数ggidentity()
,它只返回绘图本身,将其用作默认的最后一行,这样我就可以轻松添加更多行,如
ggplot(df, aes(x,y,...)) +
geom_X(...) + # after this line, I can easily add layers
... +
layer_Z(...) + # now it's easy to add layers after this line
ggidentity() # this doesn't change anything in the plot
我尝试了一个简单的功能
identity <- function(x) x
适用于magrittr-package(并改进了我在探索性数据分析中的工作流程),但不适用于ggplot2。
答案 0 :(得分:3)
我认为我们需要geom_blank(),例如:
library(ggplot2) # ggplot2_2.2.1
ggplot(mtcars, aes(wt, mpg)) +
geom_point() +
geom_blank() # The blank geom draws nothing