ggplot2:如何为scale_y_continuous()设置默认格式化程序?

时间:2015-01-16 09:50:42

标签: r ggplot2

我喜欢使用scale_y_continuous(labels=myformatter)(myformatter my custom formatter-function)作为每个ggplot的默认值。

所以我想我可以重新定义函数scale_y_contiunous

scale_y_continuous <- function(...) scale_y_continuous(..., labels=formatter)

但是我收到了错误

Error: evaluation nested too deeply: infinite recursion / options(expressions=)?
Error during wrapup: evaluation nested too deeply: infinite recursion / options(expressions=)?

那么有没有办法来定义默认行为?

1 个答案:

答案 0 :(得分:1)

您希望使用功能内scale_y_continuous而不是您自己的ggplot2 scale_y_continuous。否则你有一个明显的无限递归。您必须使用ggplot2:::scale_y_continuous指定此项。

scale_y_continuous <- function(...) ggplot2:::scale_y_continuous(..., labels=formatter)