使用 LaTeX 在 RMarkdown 中制作漂亮的方程式

Kir*_*-CO 4 latex r rstudio r-markdown

我正在尝试在 RMarkdown 中创建格式良好的方程,但我似乎无法将它正确地输入到 Knit 中。我拥有的 LaTeX 块如下所示:

---
title: "Untitled"
author: "KirkD-CO"
date: "September 18, 2019"
output: pdf_document
---

$$
f(x) = \beta_0 + \beta_1 x + \beta_2 x^2 + \beta_3 x^3 + \beta_4 (x-\xi)^3_+
\\
\begin{equation}
  (x-\xi)^3_+ =
    \begin{cases}
      (x-\xi)^3 \ , \  x>\xi
      \\
      0 \ \ \ \ \ \ \ \ \ \ \ \ \ , \ x\leq\xi
    \end{cases}       
\end{equation}
\\ 
\
\\
\begin{aligned}
  (x \leq \xi) \Rightarrow f(x) &= \beta_0 + \beta_1 x + \beta_2 x^2 + \beta_3 x^3
  \\
  (x > \xi) \Rightarrow f(x) &= \beta_0 + \beta_1 x + \beta_2 x^2 + \beta_3 x^3 + \beta_4(x^3 -3x^2\xi + 3x\xi^2 - \xi^3)
  \\
  &=(\beta_0 + \beta_4\xi^3) + (\beta_1 + 3\beta_4\xi^2)x + (\beta_2 - 3\beta_4)
\end{aligned}
$$
Run Code Online (Sandbox Code Playgroud)

在 RStudio 中,我看到了这一点:

在此处输入图片说明

但是当我尝试编织它时,出现此错误:

! LaTeX Error: Bad math environment delimiter.
Run Code Online (Sandbox Code Playgroud)

我搜索了谷歌和 StackOverflow,发现了许多类似的问题,答案建议使用 [ ] 而不是 \begin{equation},其他人建议只使用一个 $ 而不是 $$,还有一些人指的是各种 LaTeX 包,一些其中我已经尝试并在安装炼狱中结束。

关于让 Kniter 使用 RStudio 显示的输出来编织 PDF 的直接方法有什么建议吗?

编辑:我在 Fedora 30 上使用 R 3.5.3 和 Kniter 1.22。

EDIT2:在工具 -> 全局选项 -> Sweave -> 将 LaTeX 排版为 PDF 使用:设置为 pdfLaTeX

Mau*_*ers 6

根据评论,这里是一个干净的版本:

---
title: "Untitled"
author: "KirkD-CO"
date: "September 18, 2019"
output: pdf_document
---

$$
f(x) = \beta_0 + \beta_1 x + \beta_2 x^2 + \beta_3 x^3 + \beta_4 (x-\xi)^3_+
$$

$$
(x-\xi)^3_+ =
\begin{cases}
 (x-\xi)^3\, ,& x>\xi \\
 0  ,& x\leq\xi
 \end{cases}       
$$

$$
\begin{aligned}
  (x \leq \xi) \Rightarrow f(x) &= \beta_0 + \beta_1 x + \beta_2 x^2 + \beta_3 x^3 \\
  (x > \xi) \Rightarrow f(x) &= \beta_0 + \beta_1 x + \beta_2 x^2 + \beta_3 x^3 + \beta_4(x^3 -3x^2\xi + 3x\xi^2 - \xi^3) \\
  &=(\beta_0 + \beta_4\xi^3) + (\beta_1 + 3\beta_4\xi^2)x + (\beta_2 - 3\beta_4)
\end{aligned}
$$
Run Code Online (Sandbox Code Playgroud)

生产

在此处输入图片说明

一些具体评论:

  1. 将单独的 LaTeX 数学模式块放入单独的$$ ... $$(或\[ ... \]环境中(除非您使用多行数学环境,请参见下文)。
  2. 在一个cases环境中,&在每种情况下用于不同部分的水平对齐
  3. \\除非您正在使用一些多行数学环境(如cases, aligned),否则不要使用;相反,如果您确实使用多行数学环境,则必须使用\\.