如何解决Rmarkdown中标题上方的Kable打印表
使用我的 Rmarkdown 中的以下摘录
for (swimmer in swimmers) {
cat('\\newpage')
cat('## ',swimmer,'\n\n')
dtEvents <- dtClub[name == swimmer,][order(event)]
for (r in 1:nrow(dtEvents)) {
row <- dtEvents[r,]
title <- paste0('Event ',row$event,' ',row$race_gender,row$age_group,row$distance,row$stroke)
dtRace <- dt[event == row$event & seed %between% c(row$seed-5,row$seed+5)][order(seed)]
cat(kbl(dtRace[,.(seed,name,age,club,seed_time_str,seed,heat,lane)],align = c('r','l','c','r','r'),caption = title,longtable = FALSE) %>%
kable_styling(latex_options = c('striped','scale_down','repeat_header')))
cat('\n')
}
}
我最终将人名的标题打印在第一页的表格下方而不是上方。我得到每个人的分页符和表格中的所有数据,只有带有他们名称的标题在第一页上的所有数据表格下方,其余表格在其他页面后面。
编辑:在进一步检查中,\newpage 似乎根本不起作用。 \pagebreak 似乎也不起作用。
解决方法
我发现通过使用 this 答案中的信息,我能够解决问题。作为 kable/latex 的完全菜鸟,我不知道表格在文档中的位置。
通过将 kable_styling(latex_options = "HOLD_position")
添加到 kable 语句,一切都按要求工作。在 R 代码中输出 Latex 语句时确保在正确的位置使用 '\n'
还有一个奇怪的部分,否则它会有点不安。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。