You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R Markdown设置self_contained仍生成_files目录,如何解决?

解决R Markdown生成独立HTML时额外产生文件目录的问题

问题情况

我尝试用R Markdown结合knitr生成独立的HTML输出,试过以下几种配置组合,但都没达到预期:

  • 在YAML头部设置 output: html_document: self_contained: yes(也试过self_contained: TRUE)
  • 添加mode: selfcontained配置项
  • 在首个代码块里设置 knitr::opts_chunk$set(include = TRUE)

结果还是会生成xxx.html文件,同时多出一个带figure-html子目录的xxx_files文件夹:

  • 删掉figure-html里的图片,HTML里的图表完全不受影响
  • 但如果删掉xxx_files目录,xxx.html也会跟着被删掉

问题根源

查清楚了,是代码块的缓存设置在搞鬼——只要代码块里开启了缓存(比如设了cache = params$evaluate$cache或者直接写cache = TRUE),knitr就会生成这个xxx_files缓存目录,哪怕开了self_contained也没法阻止。

修复方法

选下面任意一种操作就能解决:

  • 把YAML里的params:evaluate:cache改成FALSE
  • 删掉代码块里的cache = params$evaluate$cache参数

内容的提问来源于stack exchange,提问作者Josh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 06:57:08