Ответ 1
Вы можете попробовать пакет kableExtra
.
kable(x, "html") %>%
kable_styling(full_width = F)
Можно ли настроить ширину столбцов при создании таблиц с помощью функции kable() в knitr?
Такой блок для таблицы с двумя столбцами создает таблицу, которая занимает всю ширину документа. Я бы хотел сделать столбцы более узкими. Можно ли это сделать с помощью kable() или другого пакета?
Этот фрагмент rmarkdown
```{r}
df <- data.frame(x = 1:10,
y = 11:20)
library(knitr)
kable(df)
```
Выравнивание слева с помощью kable(df, align = "l")
помогает немного, но мне бы хотелось, чтобы два столбца смежны друг с другом.
Вы можете попробовать пакет kableExtra
.
kable(x, "html") %>%
kable_styling(full_width = F)
Моей новой любимой вещью является flextable
пакет, потому что 1) таблицы красивы, 2) вы можете более легко управлять такими вещами, как ширина и размер шрифта, и 3) они хорошо отображают HTML и Word. Используя ваши данные:
'''{r}
library(flextable)
library(magrittr)
df <- data.frame(x = 1:10, y = 11:20)
df %>% regulartable() %>% autofit() %>%
width(j=~x,width=1) %>% width(j=~y,width=1)
'''
Если оба значения width
равны 1, столбцы расположены близко друг к другу:
Если вы настроите последнюю строку на width(j=~x,width=2) %>% width(j=~y,width=2)
таблица выглядит так: