[英]Add a blank row in flextable
在 Word 报告中创建表格时,我经常想在变量之间添加空白行。 作为一个简单的玩具示例:
library(dplyr)
library(officer)
library(flextable)
doc <- read_docx()
table_no_breaks <- mtcars %>%
count(cyl)
table_no_breaks_ft <- flextable(table_no_breaks)
doc <- doc %>%
body_add_flextable(table_no_breaks_ft) %>%
body_add_par("")
结果在一个看起来像这样的表中:
我可以像这样直接在数据框中添加换行符:
table_breaks <- table_no_breaks %>%
mutate(
across(
everything(),
as.character
)
) %>%
add_row(cyl = NA, n = NA, .after = 1) %>%
add_row(cyl = NA, n = NA, .after = 3) %>%
add_row(cyl = NA, n = NA, .after = 5)
table_breaks_ft <- flextable(table_breaks)
doc <- doc %>%
body_add_flextable(table_no_breaks_ft) %>%
body_add_par("") %>%
body_add_flextable(table_breaks_ft)
print(doc, "flextable.docx")
这导致我想要的 Word 表:
但是,我希望能够将空白行直接添加到 flextable 而不是构建 flextable 的数据框。 对我来说,这是一个格式问题而不是数据问题,我更喜欢将数据问题(数据框的操作)和格式问题(Word 表格的操作)分开。 任何意见是极大的赞赏!
很晚了,但是如果您只是在下面的表格示例中添加填充怎么办? 问题是您想要实际的空白行还是只是行之间的间距?
library(dplyr)
library(flextable)
table_no_breaks <- mtcars %>%
count(cyl)
table_breaks <- table_no_breaks %>%
mutate(
across(
everything(),
as.character
))
flextable(table_no_breaks) |>
padding(padding = 15, part = "all")
编辑:如果您只想填充某些行,您可以使用i
和j
输入来指定要填充的某些行和列。 下面的例子:
flextable(table_no_breaks) |>
padding(i= 2, padding = 15, padding.top = TRUE) |>
align(align = "center", part = "all")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.