我一直在尝试在循环中创建一个表。我发现我需要在打印语句中封装这个可选项,并有cat("\n")。这样,我就能够在循环中打印表。但是,格式看起来很糟糕。如何使循环中的表被正确格式化?如何在循环中使用带有print和kable的kable_styling?
这是我的密码
# function definition
test.kable <- function(filename){
rmarkdown::render(filename)
}
#test.rmd
```{r , echo=FALSE, results="asis"}
(我在1:2){
打印(头(虹膜))
禁止酷刑委员会(“\n”)
}
```{r , echo=FALSE, results="asis"}
Kable_styling(头(虹膜)),c(“条纹”,“边缘”,“响应”)
#main r markdown in which I call the function
```{r,echo=FALSE,results='asis'}
test.kable("test.rmd")
下面是它在html输出中的样子。前两个虹膜表没有很好的格式。我怎么才能让它们看起来像最后一张虹膜桌子?
关于答案的编辑
接受的答案是有用的,因为它告诉我有关css样式,其中包含表样式,我从来没有注意过。但是,如果仍然有人想使用kable_styling,我发现您只需要做以下操作(归功于此回答):
```{r , echo=FALSE, results="asis"}
(我在1:2){
%>% (头(虹膜))
Kable_styling(“条纹”) %>%
HTML工具::HTML() %>%
打印
禁止酷刑委员会(“\n”)
}
下面是两个表在kable_styling
中的样子:
发布于 2020-11-19 02:45:02
如果您能够添加一个.CSS文件,我们可以对表进行样式化,因为它的输出在您的示例中是一个HTML。
---
title: "test"
author: "John Doe"
date: "18/11/2020"
output:
html_document:
css: styles.css
---
#test.rmd
```{r , echo=FALSE, results="asis"}
图书馆(KableExtra)
(我在1:2){
打印(头(虹膜))
禁止酷刑委员会(“\n”)
}
```{r , echo=FALSE, results="asis"}
Kable_styling(头(虹膜)),c(“条纹”,“边缘”,“响应”)
下面是.css文件,名为styles.css
,位于与.Rmd相同的目录中
table {
margin: auto;
border-top: 1px solid #666;
border-bottom: 1px solid #666;
}
table thead th { border-bottom: 1px solid #ddd; }
th, td { padding: 5px; }
thead, tfoot, tr:nth-child(even) { background: #eee; }
这给了我下面的输出。
这里是我寻找帮助的地方,它甚至有一个关于HTML和循环的章节。
https://stackoverflow.com/questions/64904061
复制相似问题