関数内で名前空間変数を割り当てるのに苦労しています。CRAN パッケージ "qcc" を使用したこの例を考えてみましょう: qcc()
プロットを生成しますが、そのプロットの表示オプションは によって制御されqcc.options()
ます。
グローバルで作業する場合、すべて問題ありません。
library(qcc)
qcc.options(bg.margin="red") # sets margin background colour, i.e.
# qcc:::.qcc.options$bg.margin is "red"
qcc(rnorm(100), type = "xbar.one") # generates a plot with red margin
ただし、関数のローカル環境で作業しているqcc
場合qcc.options
、名前空間の使用方法が異なるようです。
foo <- function(x){
qcc.options(bg.margin=x)
qcc(rnorm(100), type = "xbar.one")
}
foo("green") # generates a default plot with grey margins