0

我正在尝试将多个表格放在 R Markdown 文档的一行中。我可以做到这一点,kable %>% kableStyling(... ,position='float_left')并且表格在页面上很好地排列:

在此处输入图像描述

但是,当在这些表格(标题、文本、任何东西,真的)之后恢复文本时,它会从该行最后一个表格的右侧开始。这是一个简单的例子:

---
output:
  html_document: default
  pdf_document: default
---

```{r setup, include=FALSE}
  knitr::opts_chunk$set(echo = TRUE)
  require(kableExtra)
``` and
```{r Test, echo=F}
  d1 <- data.frame(Item=c('A','B','C'),Value = c(1,2,3),Units=c('X','Y','Z'))
  knitr::kable(d1,format='html') %>%
    kable_styling(position='float_left',full_width=F)
```

## Next heading

在此处输入图像描述

我原以为## Next heading会在新的线路上开始。format='html' 和 format='latex' 都会发生这种情况:

4

1 回答 1

2

正如有关选项的kableExtra 文档所述:float

您还可以使用 float-left 或 float-right 选项将文本环绕在表格周围。

因此,您目睹的行为与包裹的预期相同。

针对您的情况,一个简单的解决方法是让每一行的最后一个表使用参数position='left'而不是position='float_left'

---
output: html_document
---

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

```{r Test, echo=F}
  d1 <- data.frame(Item=c('A','B','C'),Value = c(1,2,3),Units=c('X','Y','Z'))
  knitr::kable(d1,format='html', caption = "Table 1") %>%
    kable_styling(position='float_left',full_width=F)


    knitr::kable(d1,format='html', caption = "Table 2") %>%
    kable_styling(position='float_left',full_width=F)

      knitr::kable(d1,format='html', caption = "Table 3") %>%
    kable_styling(position='left',full_width=F)

```    
# Next heading

在此处输入图像描述

于 2018-07-13T10:08:30.250 回答