[Rd] setting global options for a package
Michael Friendly
friendly at yorku.ca
Thu May 10 15:59:10 CEST 2012
This may be elementary, but I can't find an answer: How can I set up
global options for
some specific arguments to functions in a package which can be easily
changed by the user?
This question relates to the selection of colors used in functions in
several packages (heplots,
genridge), where I want to provide reasonable default values for plots,
but allow users to
change those defaults globally for all plots produced with my functions.
One solution is to use palette() for the default, as in
foo <- function(x, col=palette(), ...) {}
but the standard palette is not appropriate for my use, and I'd rather
not hijack more typical uses
Another is to use an explicit list of colors for default, as in
bar <- function(x, col=c('red', 'blue', 'brown', 'darkgreen', ...), ...) {}
but this must be overridden each time by someone to wants to change the
defaults.
options() seems like the way to go, but I'm not sure how to implement
this. If I use
a .onLoad function to set some options, will these be created in the
global environment?
If not, how to make them so?
.onLoad <- function() {
options(heplot.colors =
c("red", "blue", "black", "darkgreen", "darkcyan","magenta",
"brown","darkgray"))
}
My function could then use
foo <- function(x, getOption("heplot.colors"), ...) {}
--
Michael Friendly Email: friendly AT yorku DOT ca
Professor, Psychology Dept.
York University Voice: 416 736-5115 x66249 Fax: 416 736-5814
4700 Keele Street Web: http://www.datavis.ca
Toronto, ONT M3J 1P3 CANADA
More information about the R-devel
mailing list