我试图在RMarkdown中旋转表格列标题。由于我对CSS不了解,到目前为止,我的尝试被证明是徒劳的。
那么,我该如何旋转表格列标题呢?
以下是RMarkdown中表格的最小示例:
---
title: "Untitled"
output:
html_document:
df_print: paged
style: ./Table.css
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(kableExtra)
library(knitr)
```
<div class="table-header-rotated">
```{r test, result="asis"}
kable(head(mtcars), "html")
```
</div>
CSS文件是根据此处提供的代码制作的:https://codepen.io/chriscoyier/pen/Fapif
任何人都可以给我一个提示吗?
答案 0 :(得分:1)
您可以使用kable_styling()
中的row_spec()
和kableExtra
。
---
title: "Untitled"
output:
html_document:
df_print: paged
style: ./Table.css
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(kableExtra)
library(knitr)
```
<div class="table-header-rotated">
```{r test, result="asis"}
kable(head(mtcars), "html") %>%
kable_styling("striped", full_width = F) %>%
row_spec(0, angle = -45)
```
答案 1 :(得分:0)
如果您捕获 html 输出,您可以使用 gsub
编辑适当的行以匹配所需的 class
、div
和 span
调用,然后使用 {{ 1}} 返回编辑后的输出。我无法让 cat
完全按照链接所示工作,但下面从 here 中获取的方法确实旋转了标签:
以 ```{css} 开头的第一个块
css
th.rotate {
/* Something you can count on */
height: 140px;
white-space: nowrap;
}
th.rotate > div {
transform:
/* Magic Numbers */
translate(25px, 51px)
/* 45 is really 360 - 45 */
rotate(315deg);
width: 30px;
}
th.rotate > div > span {
border-bottom: 1px solid #ccc;
padding: 5px 10px;
}