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

如何在R Markdown中不使用YAML参数引用bslib自定义主题?

在R Markdown中用bslib实现类似引用CSS的自定义主题调用

要实现你想要的theme: my_theme这种简洁引用方式,因为bslib主题本质是R对象,无法直接像纯CSS那样引用,但可以通过两种方式达到类似效果:

方法一:在Rmd内预定义主题对象,YAML直接引用

  1. 在Rmd的setup代码块里定义自定义bslib主题:
```{r setup, include=FALSE}
library(bslib)
# 定义你的自定义主题
my_theme <- bs_theme(
  version = 5,          # 指定Bootstrap版本
  primary = "#2c3e50",  # 主色调
  secondary = "#3498db",# 辅助色
  base_font = font_google("Inter"), # 基础字体
  code_font = font_google("Fira Code") # 代码字体
)
2. 在YAML头部直接调用这个预定义的主题对象:
```yaml
output:
  html_document:
    theme: !expr my_theme

方法二:将主题保存为外部文件,YAML加载引用

如果想和CSS文件一样把主题单独存成外部文件,步骤如下:

  1. 先在R控制台定义并保存主题为RDS文件:
library(bslib)
my_theme <- bs_theme(
  version = 5,
  primary = "#2c3e50",
  secondary = "#3498db"
)
# 保存到外部文件
saveRDS(my_theme, "my_theme.rds")
  1. 在Rmd的YAML头部加载这个外部主题文件:
output:
  html_document:
    theme: !expr readRDS("my_theme.rds")

两种方式都是通过!expr让YAML执行R代码,实现类似引用外部资源的简洁写法,加载预先定义好的bslib主题对象。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 02:43:14