gpt4 book ai didi

r - 将ggplot保存在函数中

转载 作者:行者123 更新时间:2023-12-03 07:57:13 27 4
gpt4 key购买 nike

我正在尝试使用图形设备将ggplot保存在函数中。但是我发现代码产生了空图。下面是一个非常非常简单的示例。

library(ggplot2)
ff <- function(){
jpeg("a.jpg")
qplot(1:20, 1:20)
dev.off()
}
ff()

如果我只运行该函数的内容,那么一切都很好。我知道使用ggsave()可以完成我想要的事情,但是我只是想知道为什么jpeg()加上dev.off()无法正常工作。我用不同版本的R尝试了此操作,问题仍然存在。

最佳答案

您应该使用ggsave而不是jpeg(); print(p); dev.off()序列。 ggsave是一个包装程序,除了可以提供更多的选项和多功能性外,它可以完全执行您打算对函数执行的操作。您可以明确指定输出类型,例如jpg或pdf,否则会从您的文件扩展名中猜测出来。

因此,您的代码可能会变成类似以下内容:

p <- qplot(1:20, 1:20)
ggsave(filename="a.jpg", plot=p)

有关更多详细信息,请参见 ?ggsave

代码中原始行为无法正常工作的原因确实是一个常见问题(有关 stackoverlflowR FAQs on CRAN)。您需要插入 print语句以打印图。在交互式控制台中,打印在后台静默执行。

关于r - 将ggplot保存在函数中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7034647/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com