Я пытаюсь создать таблицу с использованием Kable и KableExtra и связать ее в PDF. Я хотел бы реализовать несколько функций дизайна таблиц, распечатать их в одном файле PDF и, если возможно, иметь несколько таблиц на страницу, и делать это итеративно. Я попытался решить следующие проблемы:
1) Save_Kable to Html: это позволяет мне создавать таблицы итеративно и добавлять все необходимые мне элементы дизайна. Проблема в том, что он сохраняется в файл Html, а затем мне нужно распечатать их все в pdf, а затем объединить все файлы.
{r save kable as html}
df %>%
kable("html", align = c("l",rep("c",length(df)))) %>%
kable_styling(bootstrap_options = c("striped","bordered","condensed")) %>%
add_header_above(c("Type"=1,"Variables"=11)) %>%
add_header_above(c("Header" = 12)) %>%
save_kable(paste0("Save kable as html.html"))
2 ) Save_Kable to pdf: это позволяет мне делать то же самое, что и при печати в Html, но при печати в pdf изображение получается очень размытым и не очень пригодным для использования.
{r save kable as pdf}
df %>%
kable(align = c("l",rep("c",length(df)))) %>%
kable_styling(bootstrap_options = c("striped","condensed","bordered")) %>%
add_header_above(c("Type"=1,"Variables"=11)) %>%
add_header_above(c("Header" = 12)) %>%
save_kable(paste0("Save kable as pdf.pdf"))
3) Функция печати: это позволяет мне связать файл, и все таблицы заканчиваются в одном файле PDF. Я не нашел способа сохранить несколько таблиц на одной странице. Основная проблема заключается в том, что форматирование этих таблиц застряло по умолчанию, и я не смог применить какое-либо форматирование.
{r results='asis'}
print(
df %>%
kable(align = c("l",rep("c",length(df)))) %>%
kable_styling(bootstrap_options = c("striped","condensed","bordered")) %>%
add_header_above(c("Type"=1,"Variables"=11)) %>%
add_header_above(c("Print" = 12))
)
4) As_Image: Это также не позволит мне изменить форматирование по умолчанию. Я также не могу создавать их итеративно. Это позволяет мне сохранять несколько страниц на одной странице, но мне придется создавать их все вручную.
{r save as image}
df %>%
kable(align = c("l",rep("c",length(df)))) %>%
kable_styling(bootstrap_options = c("striped","condensed","bordered")) %>%
add_header_above(c("Type"=1,"Variables"=11)) %>%
add_header_above(c("As Image" = 12)) %>%
as_image(width = 6.5,file="file.png")
Мне также не удалось заставить их печатать с помощью чередующейся опции. Если у кого-то есть какие-либо идеи, дайте мне знать, я потратил слишком много времени на исследования и не нашел ничего, что, кажется, работает. Заранее спасибо.
Редактировать: пример данных из mtcars