簡體   English   中英

Rmarkdown 和 kable_save() 中的 kableExtra HTML 樣式

[英]kableExtra HTML styling in Rmarkdown and kable_save()

這已經困擾我太久了,我將不勝感激。 我一直在為 kable 投入時間,但它對我來說並沒有像我想要的那樣奏效。 我希望創建如圖所示的多分組行

乳膠輸出

執行此操作的代碼如下:

collapse_rows_dt <- expand.grid( District = sprintf('District %s', c('1', '2')), City = sprintf('City %s', c('1', '2')), State = sprintf('State %s', c('a', 'b')), Country = sprintf('Country with a long name %s', c('A', 'B'))
)
collapse_rows_dt <- collapse_rows_dt[c("Country", "State", "City", "District")] 
collapse_rows_dt$C1 = rnorm(nrow(collapse_rows_dt)) 
collapse_rows_dt$C2 = rnorm(nrow(collapse_rows_dt))

kbl(collapse_rows_dt, booktabs = T, align = "c", linesep = '') %>%
collapse_rows(1:3, row_group_label_position = 'stack')

問題是,當我在 R markdown 中運行它時,我在輸出中得到了 HTML 版本(見下文) 在此處輸入圖片說明

這顯然不夠好。 如果我編織到 pdf,我可以獲得正確的輸出(第一張圖像),但就是這樣。 如果我嘗試執行 save_kable() ,結果是第二張圖片中的 HTML 格式。 每次編織成 pdf 都是不切實際的,如果我不能解決這個問題,我就不能再使用 kable 了。 這對我來說是件大事。

如果我設置 format='latex' 則內聯沒有顯示任何內容,當我嘗試 kable_save() 時,我收到此錯誤消息:

這是 Xtex 版本 3....(tex live 2020/w32Tex) 預加載格式=xlatex) 限制 \\write18 啟用。 進入擴展模式

接着是一個通知我的流行音樂(R 崩潰)

R會話中止,遇到致命錯誤

所有不需要乳膠的 HTML 表格都會適當地內聯顯示,並將保存為它們的實際圖像。

相關最新包:

-     library(webshot) 
      library(tinytex) (also tried without)
      library(magick) 
      library(plyr) 
      library(tidyverse) 
      library(dplyr)
      library(knitr) 
      library(skimr) 
      library(kableExtra)

還:

  • Ghostscript 9.52 是當前版本並設置為環境
  • 密文 2.9

試過:

  • 通過 install.packages(magick) 更新 imageMagick

  • 手動安裝以下 Latex 包

    • 庫(tinytex)tlmgr_install(pkgs = 'standalone')tlmgr_install(pkgs = 'preview')tlmgr_install(pkgs = 'polyglossia')tlmgr_install(pkgs = 'xltxtra')tlmgr_install(pkgs = 'realscripts')
  • 將 Mixtex 設置為環境路徑

如果要編織並包含通過 LaTeX 和 PDF 生成的圖像,可以使用kableExtra::as_image

---
output: html_document
---

```{r}
library(kableExtra)
library(magrittr)

collapse_rows_dt <- expand.grid( District = sprintf('District %s', c('1', '2')), City = sprintf('City %s', c('1', '2')), State = sprintf('State %s', c('a', 'b')), Country = sprintf('Country with a long name %s', c('A', 'B'))
)

collapse_rows_dt <- collapse_rows_dt[c("Country", "State", "City", "District")] 
collapse_rows_dt$C1 = rnorm(nrow(collapse_rows_dt)) 
collapse_rows_dt$C2 = rnorm(nrow(collapse_rows_dt))

kbl(collapse_rows_dt, "latex", align="c", linesep="", booktabs = T) %>%
  collapse_rows(1:3, row_group_label_position = 'stack') %>%
  kable_styling(latex_options = c("striped", "scale_down")) %>%
  as_image()
```

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM