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

RMarkdown使用数学块写公式出现Bad math environment delimiter错误如何处理

RMarkdown数学块报错通用解决方案

语法规则校验

  • 行内公式使用的$前后不能留空格,正确格式为$E=mc^2$,错误格式为$ E=mc^2 $。
  • 块级公式的$$必须单独占行,公式内容放在两个$$中间,示例:
$$
\sum_{i=1}^{n} i = \frac{n(n+1)}{2}
$$
  • 检查公式内部是否有未闭合的大括号、拼写错误的LaTeX命令,比如不要将\frac{}{}误写为\farc{}{},上标^、下标_对应的参数要完整。

渲染配置修正

PDF输出场景

  • 首先确认本地已安装完整的LaTeX环境,推荐使用TinyTeX,R中可通过install.packages('tinytex'); tinytex::install_tinytex()快速安装。
  • 在文档YAML头部添加数学宏包依赖配置:
---
title: "你的文档标题"
output: 
  pdf_document:
    latex_engine: xelatex
    extra_dependencies: ["amsmath", "amssymb", "ctex"]
---

注:添加ctex宏包和指定xelatex引擎可解决公式内包含中文的报错问题

HTML输出场景

  • 若mathjax加载异常导致公式渲染失败,在YAML中指定默认mathjax配置即可:
output:
  html_document:
    mathjax: default

特殊字符处理

  • 公式中如果出现%、#、&等LaTeX保留字符,必须添加反斜杠转义,写作\%、\#、\&。
  • 避免在公式中直接插入未转义的markdown格式标记。

内容的提问来源于stack exchange,提问作者汤中天

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 20:48:02