回复 第16楼 的 zggjtsgzczh:
<br />
<<setup, cache=FALSE, include=FALSE>>=<br />
opts_knit$set(upload.fun = imgur_upload, self.contained = FALSE, root.dir = '~/R/project')<br />
@<br />
如上行代码所示的upload.fun、 self.contained、root.dir 这些选项在opts_knit$get()里是找不到,那怎么知道对应的选项有哪些(不就是opts_knit$get()吗)?upload.fun应该是从外部添加的吧?如何添加,是不是和下面提到的base包的options有关。这到底是个什么机制呢?</p>
<br />
<<setup, include=FALSE, cache=FALSE>>=<br />
library(knitr)<br />
options(replace.assign=TRUE,width=50) # which package does options blong to<br />
opts_chunk$set(fig.path='figure/graphics-', cache.path='cache/graphics-', fig.align='center', dev='tikz', fig.width=5, fig.height=5, fig.show='hold', cache=TRUE, par=TRUE)<br />
knit_hooks$set(par=function(before, options, envir){<br />
if (before && options$fig.show!='none') par(mar=c(4,4,.1,.1),cex.lab=.95,cex.axis=.9,mgp=c(2,.7,0),tcl=-.3)<br />
}, crop=hook_pdfcrop)<br />
@<br />
如上段代码里,options()是base里的一个函数,主要是设置全局变量的。其中,replace.assign这个选项在names(options())里也是看不到的。</p>
ps:\SweaveOpts{concordance=TRUE},这句话这里还能用吗