簡體   English   中英

Rmarkdown PDF表格,合並單元格並返回行

[英]Rmarkdown PDF tables, merge cells and return to line

我正在嘗試在我的 pdf 報告中整合一項調查,該調查由三列組成; 一個是代碼,第二個是問題,第三個是可能的答案。 我想得到或多或少這樣的結果:

在此處輸入圖像描述

library('flextable')

survey <- data.frame(a=c("code 1", "code 1","code 2","code 2","code 2"), b=c("this is a very very very very very very very long question","this is a very very very very very very very long question","this is also a very very very very very very very long question", "this is also a very very very very very very very long question", "this is also a very very very very very very very long question"), c=c("I agree","I don't", "yes","no","maybe"))

所以我基本上有兩個需求; 垂直合並 a 列和 b 列的單元格,並在 b 列中有很長問題的地方換行。

我嘗試使用 flextable 可以很好地合並單元格,但是,即使指定列的寬度,在合並的地方,句子也不會返回到行。

ft_merge <- flextable(survey)
ft_merge <- merge_v( ft_merge, j= ~ a + b)%>%
  width(ft_merge$a, width=0.1)%>%
width(ft_merge$b, width=2)%>%
  width(ft_merge$c, width=2)
ft_merge

結果:

在此處輸入圖像描述

我也嘗試使用 Kable,但從我讀到的內容中沒有合並行的選項。

最后,我嘗試使用 Huxtable,但我不斷收到與編碼相關的錯誤(調查是法語的,包含很多口音。)

你能建議我另一種解決方案嗎? 我是否正確使用了 flextable?

謝謝!

這已在最新版本的 flextable ( >=0.7.1 ) 中得到修復。

library(flextable)
library(magrittr)

survey <- data.frame(
  a = c("code 1", "code 1", "code 2", "code 2", "code 2"), 
  b = c("this is a very very very very very very very long question", 
        "this is a very very very very very very very long question", 
        "this is also a very very very very very very very long question", 
        "this is also a very very very very very very very long question", 
        "this is also a very very very very very very very long question"), 
  c = c("I agree", "I don't", "yes", "no", "maybe"))

ft_merge <- flextable(survey)
ft_merge <- merge_v(ft_merge, j = ~ a + b) %>%
  width(j = "a", width = 0.5) %>%
  width(j = "b", width = 2) %>%
  width(j = "c", width = 2)


print(ft_merge, preview = "pdf")

在此處輸入圖像描述

暫無
暫無

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

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