On 2/9/2016 9:51 AM, Bert Gunter wrote:
Spencer, et. al.:
As I suspected, my previous "solution" was pretty stupid. Here is, I
think, the "right" way to
go about it:
plotxy <- function(x,...){
mcall <- match.call(expand.dots=FALSE)
mcall[[1]]<- plot.default
eval(mcall)
}
Hi, Bert, et al.: I couldn't get that to work, either:
> XY <- data.frame(x1=1:3, y1=4:6)
> plotxy(y1~x1, XY, xlim=c(0, max(x1)))
Error in eval(expr, envir, enclos) : object 'y1' not found
However, my original function inside "with" worked, but Bert's
suggestion didn't:
> plot.sg <- function(x, ...){
+ plot(x, ...)
+ }
> with(XY, plot.sg(y1~x1, xlim=c(0, max(x1))))
> # worked, but "plotxy" with match.call didn't:
> with(XY, plotxy(y1~x1, xlim=c(0, max(x1))))
Error in eval(expr, envir, enclos) : object 'y1' not found
> sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.11.2 (El Capitan)
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] tools_3.2.3
I don't understand this, but "with" is acceptable for my current
needs.
Thanks again to Bert & Jeff.
Spencer Graves
Best,
Bert
Bert Gunter
"The trouble with having an open mind is that people keep coming along
and sticking things into it."
-- Opus (aka Berkeley Breathed in his "Bloom County" comic strip )
On Mon, Feb 8, 2016 at 8:10 PM, Spencer Graves
<spencer.gra...@effectivedefense.org> wrote:
Hi, Jeff et al.:
On 2/8/2016 9:52 PM, Jeff Newmiller wrote:
plotxy(y1~x1, XY, xlim=c(0, max(XY$x1)))
Yes, Thanks.
Is there a way to do this from within "plotxy", so I can call
"plotxy" as I call "plot"?
Thanks,
Spencer
--
Sent from my phone. Please excuse my brevity.
On February 8, 2016 7:17:57 PM PST, Spencer Graves
<spencer.gra...@effectivedefense.org> wrote:
I'm getting an interesting error:
plotxy <- function(x, ...){
+ plot(x, ...)
+ }
XY <- data.frame(x1=1:3, y1=4:6) plotxy(y1~x1, XY, xlim=c(0,
max(x1)))
Show Traceback
Rerun with Debug
Error in eval(expr, envir, enclos) : object 'x1' not found
The following work:
plotxy(y1~x1, XY)
plot(y1~x1, XY, xlim=c(0, max(x1)))
Within "plotxy", R can't find "x1" to compute "xlim". Is there a
way I can make x1 available to xlim?
Thanks,
Spencer
------------------------------------------------------------------------
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guidehttp://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
[[alternative HTML version deleted]]
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.