Я пытаюсь изменить внешний вид таблицы, используя пакеты kable и kableExtra в вязке Markdown R для вывода в PDF.
В частности, я хотел бы удалить все границы из таблицы и добавить только одну горизонтальную линию под заголовком и одну вертикальную линию рядом с именами строк.
На данный момент у меня есть этот код:
---
header-includes: \setmainfont[Path = C:/Windows/Fonts/]{Arial}
\usepackage{colortbl}
\arrayrulecolor{white}
output:
pdf_document:
latex_engine: xelatex
word_document: default
---
```{r echo=FALSE, message=FALSE, warning=F, paged.print=TRUE}
library(kableExtra)
library(magrittr)
DATA<- data.frame(jen=c(1,2,3,4,5), feb=c(2,3,4,5,3), mar=c(0,2,4,1,2))
rownames(DATA)<-c("first","second","third","fourth","fifth")
kable(DATA, "latex")
```
, которая генерирует эту таблицу:
Таблица
Чтобы удалить все границы, я устанавливаю белые границы по умолчанию в качестве ответа на предложенный вопрос.
Теперь я хотел бы добавить горизонтальную синюю линию под заголовком и вертикальную синюю линию справа от названий строк.
Я могу получить горизонтальную линию со следующим:
---
header-includes: \setmainfont[Path = C:/Windows/Fonts/]{Arial}
\usepackage{colortbl}
\arrayrulecolor{white}
output:
pdf_document:
latex_engine: xelatex
---
```{r echo=FALSE, message=FALSE, warning=F, paged.print=TRUE}
library(kableExtra)
library(magrittr)
DATA<- data.frame(jen=c(1,2,3,4,5), feb=c(2,3,4,5,3), mar=c(0,2,4,1,2))
rownames(DATA)<-c("first","second","third","fourth","fifth")
kable(DATA, "latex") %>%
row_spec(0, extra_latex_after = "\\arrayrulecolor[rgb]{0,.275,.725}") %>%
row_spec(1:nrow(DATA), extra_latex_after = "\\arrayrulecolor{white}")
```
Получение this .
Я хотел бы сделать то же самое с вертикальной линией, но в функции column_spec нет такой команды, как 'extra_latex_after'. Он принимает только команды extra_css, которые, очевидно, не работают для вывода PDF.
Моя цель - получить что-то вроде этого .
Я знаю, что могу получить тот же результат с другими пакетами для таблиц, но мне интересно, возможно ли получить что-то подобное с помощью kable.
Кто-нибудь знает, есть ли решение для этого?