3

我有一个以 ggplot2 为主题的全局变量:

cPlotOpts <- opts (axis.text.x = theme_text (size=10, colour="grey50"), axis.text.y = theme_text (…

我想稍后在代码中添加一个参数,但不修改已经设置的参数,这样

axis.text.x = theme_text (size=10, colour="grey50", angle=90)

如何将这一参数 ( angle) 添加到已定义的参数中,theme_text而无需显式重复sizeand的设置colour

[为了更清楚,在第一个答案之后编辑。]

4

1 回答 1

2

我认为最简单的方法是只使用一个函数。

cPlotOpts <- function(size = 10, colour = "grey50", ...) {
  opts(axis.text.x = theme_text (size=size, colour=colour, ...))
}

然后稍后添加一个参数,只需:

cPlotOpts(angle=90)

产生:

cPlotOpts(angle=90)
$axis.text.x
theme_text(colour = colour, size = size, angle = 90)

attr(,"class")
[1] "options"

如果您不想对其进行编辑,只需使用cPlotOpts(). 这样的事情可以接受吗?

于 2012-08-11T01:55:25.573 回答