【问题标题】:How can I auto-number math equations in RMarkdown?如何在 RMarkdown 中为数学方程式自动编号?
【发布时间】:2019-03-27 03:39:04
【问题描述】:
$$
r  = \frac{1}{n-1} \sum_{i=1}^{n} \frac{(X_i - \bar{X})(Y_i - \bar{Y})}{S_xS_y}
$$

The rendered equation is not numbered. 使用 \begin{aligned} 和 \end{aligned} 会产生错误。

我也在 RStudio 中使用 knitr,使用 pandoc 和 xelatex 引擎编织成 PDF。

谢谢。

【问题讨论】:

    标签: r latex r-markdown


    【解决方案1】:

    试试align 而不是aligned

    \begin{align}
        r  = \frac{1}{n-1} \sum_{i=1}^{n} \frac{(X_i - \bar{X})(Y_i - \bar{Y})}{S_xS_y}
    \end{align}
    

    【讨论】:

    • 谢谢。有效。我包括了 $$...$$,这似乎破坏了一些东西。
    【解决方案2】:

    正如所指出的amsmath 已经在默认模板中,因此您可以调用equation 环境

    \begin{equation}
    y = mx+b
    \end{equation}
    

    这将按照使用顺序自动为方程式编号。要使用另一个字符,比如 *,

    \begin{equation}
    \tag{*}
    y = ax^2 + bx + c
    \end{equation}
    

    要不标记等式,只需将 tag{} 留空即可。

    有关alignequation 之间的区别,请参阅this answer

    【讨论】:

    • YAML 中的 \usepackage{amsmath} 标头是我所缺少的。
    • 我在 YAML 中添加了 \usepackage{amsmath} 标头,无论是否包含它都有效。我的最终代码如下所示:``` --- 标题:测试文档 header_includes:- \usepackage{amsmath} 输出:pdf_document --- \begin{align} r = \frac{1}{n-1} \sum_ {i=1}^{n} \frac{(X_i - \bar{X})(Y_i - \bar{Y})}{S_xS_y} \end{align} ```
    • tarleb,感谢您的意见。我知道它是header-includes,但是随着某些文档类型的 YAML 不断增长,从 header_includes 更改为 header-includes 破坏了其他包的加载。原来这是因为我不需要指定\usepackage{amsmath}
    • 所以kranja,最好不要指定amsmath,使用header-includes而不是header_includes来加载其他包。
    • 谢谢@jared-t 这有助于澄清排序 - YAML 和主体。
    猜你喜欢
    • 2020-04-06
    • 2014-10-10
    • 1970-01-01
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多