我想知道是否可以在ggplot2中创建一组类似的数字,并以某种方式更改数据.例如,我可以创建一个函数来完成这个任务:
plot1 <- function(data) ggplot(data) + geom_line(aes(x,y)) + theme_bw()
plot1(data)
plot1(newdata)
Run Code Online (Sandbox Code Playgroud)
但是有可能以某种方式保存和重用一组组件吗?(显然这不起作用):
g <- geom_line(aes(x,y)) + theme_bw()
ggplot(data) + g
ggplot(newdata) + g
Run Code Online (Sandbox Code Playgroud)
mne*_*nel 14
还有的+.gg描述的方法在这里
这些是
%+%和%+replace% 将更新/替换ggplots和中的元素themes
例如
p <- ggplot(mtcars, aes(x =wt, y = mpg,colour = hp)) + geom_point()
# change the variable mapped to y
p %+% aes(y = am)
# change the data set
p %+% mtcars[1:10,]
Run Code Online (Sandbox Code Playgroud)
或者您可以将元素组合为一个列表
例如
#
g <- list(geom_line(aes(x,y)),theme_bw())
ggplot(data) + g
Run Code Online (Sandbox Code Playgroud)