我正在尝试用ggsave()
保存一个情节。我输入以下内容:
library(ggplot2)
Test = data.frame("X" = seq(1, 10, 1), "Y" = 2*seq(1, 10, 1))
P = ggplot(
Test, aes(x=X, y=Y))+
geom_line()
ggsave(P, "test.pdf", device = "pdf")
但是得到错误:
Saving 7 x 7 in image
Error in UseMethod("grid.draw") :
no applicable method for 'grid.draw' applied to an object of class "character"
答案 0 :(得分:7)
许多保存数据的R函数(例如write.table()
,saveRDS()
等)将第一个参数作为要保存的对象。但是,ggsave()
的不为真。相反,默认情况下,它的第一个参数是要保存的文件的名称。因此,上述语法需要以两种方式之一进行修改:
ggsave(plot = P, "test.pdf", device = "pdf")
ggsave("test.pdf", P, device = "pdf")