[R] does pdf() work inside of a function?

Anuj Goyal @nuj@goy@| @end|ng |rom gm@||@com
Mon Jul 29 02:56:25 CEST 2019


Thanks!  I think the quantmod maintainer is trying to make it a bit
more functional so there are fewer side effects.
I'll try to find a workaround.

On Sun, Jul 28, 2019 at 4:58 PM Duncan Murdoch <murdoch.duncan using gmail.com> wrote:
>
> On 28/07/2019 7:40 p.m., Anuj Goyal wrote:
> > Why does pdf() work outside a function, but not inside it?
>
> Try a simpler example, and you'll see that it does, e.g.
>
>   f <- function() { pdf("temp.pdf"); plot(1, main="inside f"); dev.off() }
>
>    You're doing very complicated things in your function; quantmod does
> very complicated things in getSymbols().  One of those complicated
> things is breaking, it's not pdf() that's breaking.
>
> Duncan Murdoch
>
> >
> > R version 3.6.0 (2019-04-26) on Mac 10.14.5
> >
> > # R --silent --vanilla < s2.r
> > library(quantmod)
> > options("getSymbols.warning4.0"=FALSE)
> > options("getSymbols.yahoo.warning"=FALSE)
> >
> > gs <- function(f) {
> >    csvText <- "s,n\nAFL,AFLAC\nAIG,AIG"
> >    csv <- read.csv(text=csvText, stringsAsFactors = FALSE)
> >    symVec <- getSymbols(as.vector(csv$s))
> >
> >    # create PDF
> >    fname = paste0(f,".pdf")
> >    pdf(file = fname)
> >    par(mfrow = c( 4,2 ) )
> >    mapply (chart_Series, mget(symVec))
> >    dev.off()
> > }
> > gs("t")
> >
> > csvText <- "s,n\nAFL,AFLAC\nAIG,AIG"
> > csv <- read.csv(text=csvText, stringsAsFactors = FALSE)
> > symVec <- getSymbols(as.vector(csv$s))
> >
> > # create PDF
> > pdf(file = "t2.pdf")
> > par(mfrow = c( 4,2 ) )
> > mapply (chart_Series, mget(symVec))
> > dev.off()
> >
> >
> >>>> output
> >
> > -rw-r--r--@ 1 b  staff     4053 Jul 28 16:15 t.pdf
> > -rw-r--r--@ 1 b  staff   154506 Jul 28 16:15 t2.pdf
> >
> > ______________________________________________
> > R-help using 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.
> >
>


-- 
-Anuj



More information about the R-help mailing list