我创建了一个包含许多复杂ggplots的大型项目。其中一些应该使用shiny
包共享。
在shiny
项目中,我想添加以sidebarPanel中某些小部件为条件的其他数据点。
我的问题是,是否有办法保存ggplots,以便可以在不使用原始数据或用于创建绘图的代码的情况下在另一个项目(即添加+geom_point()
)中修改它们?
答案 0 :(得分:3)
您可以在GDS文件中提供ggplot对象。例如
# create sample plot
library(ggplot2)
dd <- data.frame(x=1:10, y=exp(1:10))
gg <- ggplot(dd, aes(x,y)) + geom_point()
# save it and delete it from workspace
saveRDS(gg, "plot.rds")
rm(gg)
#reload it (into new object) and add layer
g2 <- readRDS("plot.rds")
g2 + geom_line()