我使用flextable来循环一个数据列表,为列表中的每个元素生成标题和表格,从而在rmarkdown个文档中生成表格.虽然我可以成功地呈现标题和表格,但标题和表格之间的填充/边距太大,我找不到减少它们的方法.以下是我目前掌握的情况:

---
title: "Untitled"
output: html_document
date: '2022-05-09'
---

``{r setup, include=FALSE}
library(flextable)
library(magrittr)
``

``{r results='asis', echo=FALSE, ft.align="left"}

my_list<-list()
my_list$ds1<-head(mtcars, 5)
my_list$ds2<-head(mtcars, 10)

for (i in 1:length(my_list)) {
  
  myft <- flextable(my_list[[i]]) %>% 
    set_caption(paste("Caption ", i))
  
  flextable_to_rmd(myft)
  
}
``

我认为使用flextable::padding()可能会有所帮助,但这似乎只控制表格行内的填充,而不是页面上元素之间的间距.

请注意,我已经删除了上面代码示例中一些必需的标记反勾号,以便它可以在Stackoverflow上正确渲染.

Unwanted padding between caption and top of the table

推荐答案

将此添加到您的RMD中.不要把它放在代码块中,只要把它放在你可以自由编写的地方就行了.

<style>
caption {
  padding-bottom: 0px;
}
</style>

现在,标题是用p标签写的,被标题标签包围,被更多的p标签包围,所有这些标签都有填充、边距和线条高度规格.这会让你以最少的努力获得最大的成功(IMO).

enter image description here

R相关问答推荐

保存包含循环和ifelse的函数的输出

找出疾病消失的受试者

在R中无法读入具有Readxl和lApply的数据集

非线性混合效应模型(NLME)预测变量的置信区间

将文件保存到新文件夹时,切换r设置以不必创建目录

将多列合并为单独的名称—值对

可以替代与NSE一起使用的‘any_of()’吗?

我们如何在R中透视数据并在之后添加计算

减go R中列表的所有唯一元素对

R中时间间隔的大向量与参考时间间隔的相交

计算Mean by分组和绑定到R中的数据集

使用ifElse语句在ggploy中设置aes y值

策略表单连接两个非常大的箭头数据集,而不会 destruct 内存使用

是什么打破了此Quarto仪表板中的工具提示?

如何在基数R中根据矩阵散点图中的因子给数据上色?

在shiny /bslb中,当卡片是从json生成时,如何水平排列卡片?

使用循环改进功能( struct 简单)

在R中,如果一个值在同一数据帧中的任何特定列中,如何计算?

地址部件的标准化

匹配名字相似的人:r