有没有办法为ggsave设置新的默认值?

时间:2011-05-06 17:57:59

标签: r ggplot2

每次通话都不必重复“height = 4,width = 4,dpi = 72”。 。

我曾经尝试过像这样的问题的库(默认值),但它表现不佳。我在R-help上问了一个关于它的问题,但似乎没有人使用它。

看起来par(“din”)来自我运行的X11设备,但这不会是ggsave()在我调用时使用的设备,我不认为,因为我'要么保存为.png,要么保存.pdf - PDF对我的散点图和平铺图没有好处。当然,当我将它们放入我的LaTeX文档时,PDF会更好地扩展,但看起来这通常是一个理想的控制级别。

感谢您的想法。

1 个答案:

答案 0 :(得分:9)

这可能不是最好的方法,但您可以编写具有不同高度和宽度默认值的包装函数。例如

my.ggsave <- function(filename = default_name(plot), height= 4, width= 4, dpi= 72, ...) {
ggsave(filename=filename, height=height, width=width, dpi=dpi, ...)
}

现在我们可以测试my.ggsave是否符合我们的要求:

ggplot(data.frame(x=1:10), aes(x=x, y=x)) + geom_point()
ggsave("normal_ggsave.png")

并确保如果需要,我们可以将其他参数传递给ggsave

my.ggsave("four_by_four_600.png", dpi=600)