我正在尝试通过knitr
生成数字来自动生成pptx的一些方法,并想知道是否有一种方法只能为生成绘图的块禁用cache
。当有像这样的标题时,我试图将缓存设置为false:
knitr::knit_hooks$set(fig.cap = function(options) {
options$cache <- FALSE
options
})
但它不起作用(可能在此之前评估cache
选项)。
我也尝试在plot
挂钩中设置它,但没有结果。
knit_plot <- knitr::knit_hooks$get("plot")
knitr::knit_hooks$set(plot = function(x, options) {
options$cache <- FALSE
read_pptx(pptfile) %>%
add_slide(layout = "figure", master = "Office Theme") %>%
ph_with_gg(last_plot(), type = "pic") %>%
print("pptprueba.pptx")
knit_plot(x, options)
})
当然我可以手动设置cache = FALSE
,但我希望以更加编程的方式进行操作。
答案 0 :(得分:2)
好的,事实证明我必须使用opts_hooks
而不是knit_hooks
。这有效:
knitr::opts_hooks$set(fig.cap = function(options) {
options$cache <- FALSE
options
})