来自特定R Markdown YAML配置的非预期PDF格式

wwwo4jvm  于 2023-02-10  发布在  其他
关注(0)|答案(1)|浏览(144)

在R Studio中,我的R Markdown文档是这样开头的:

---
title: 'ST 412: Homework 3'
author: "Camden White"
documentclass: amsart
geometry: margin=1in
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)

1. Read Data Set and Define Variables

library(tidyverse)
library(magrittr)

当我不包含`documentclass: amsart`时,一切正常,但是当我包含它时,`library`部分被放在`## 1. Read Data Set and Define Variables`头之前。
当两个组件之间有文本时,顺序与代码中的顺序相同,但如果没有文本,则`library`部分先出现。默认的`article`文档类不会出现这种情况,我不知道为什么会出现这种情况。如何使用`amsart`文档类并解决这个顺序问题?
qv7cva1a

qv7cva1a1#

问题似乎是amsart中的一个小节基本上就是普通类中的一个段落:一段没有编号的粗体文本,后面没有新的段落。文本将在同一行继续。因为源代码的灰色框跨越了一整行,所以它不能放在那里,而是显示在上面。你可以在普通的文章类中重现这种情况,如下所示:

\documentclass{article}
\usepackage{framed}
\begin{document}
\paragraph{1. Read Data Set and Define}
\begin{framed}
test
\end{framed}
\end{document}

你可以通过确保源代码不是子章节的第一段来避免这个问题,例如添加一些不可见的东西:

---
title: 'ST 412: Homework 3'
author: "Camden White"
documentclass: amsart
geometry: margin=1in
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)

1. Read Data Set and Define Variables

\mbox{}

library(tidyverse)
library(magrittr)

![](https://i.stack.imgur.com/zVQqv.png)

相关问题