我有以下Rmd文件,它生成一个html文件,然后我将其复制粘贴到docx文件中(对于协作者)。以下是我想知道如何处理表格的内容,但我无法在小插图中找到答案here:
一个。我想知道如何删除在Cgroup 1和Cgroup 2之间插入Word的空白列。
B中。我想知道如何使用行名称(“第1行”,...)
设置列的宽度℃。如何更改字体和字体大小?我尝试跟随this,但输出不起作用:word_document with htmlTable()
d。为了简化到Word的转换,有没有办法指定分页符?横向?
非常感谢你!
---
title: "Example"
output:
Gmisc::docx_document:
fig_caption: TRUE
force_captions: TRUE
---
Results
=======
```{r, echo = FALSE}
library(htmlTable)
library(Gmisc)
library(knitr)
mx <-
matrix(ncol=6, nrow=8)
rownames(mx) <- paste(c("1st", "2nd",
"3rd",
paste0(4:8, "th")),
"row")
colnames(mx) <- paste(c("1st", "2nd",
"3rd",
paste0(4:6, "th")),
"hdr")
for (nr in 1:nrow(mx)){
for (nc in 1:ncol(mx)){
mx[nr, nc] <-
paste0(nr, ":", nc)
}
}
htmlTable(mx,
cgroup = c("Cgroup 1", "Cgroup 2"),
n.cgroup = c(2,4))
```
答案 0 :(得分:0)
行名称的样式似乎已关闭,现在已在版本1.10.1中修复,您可以使用devtools
包下载:devtools::install_github("gforge/htmlTable", ref="develop")
关于样式,该功能几乎允许您可以成像的任何CSS-style。不幸的是,它需要复制粘贴到Word中,并且此功能并未成为Microsoft的最高优先级。您可以使用css.cell轻松调整您的示例以适应所需的更改:
library(htmlTable)
library(knitr)
mx <-
matrix(ncol=6, nrow=8)
rownames(mx) <- paste(c("1st", "2nd",
"3rd",
paste0(4:8, "th")),
"row")
colnames(mx) <- paste(c("1st", "2nd",
"3rd",
paste0(4:6, "th")),
"hdr")
for (nr in 1:nrow(mx)){
for (nc in 1:ncol(mx)){
mx[nr, nc] <-
paste0(nr, ":", nc)
}
}
css.cell = rep("font-size: 1.5em;", times = ncol(mx) + 1)
css.cell[1] = "width: 4cm; font-size: 2em;"
htmlTable(mx,
css.cell=css.cell,
css.cgroup = "color: red",
css.table = "color: blue",
cgroup = c("Cgroup 1", "Cgroup 2"),
n.cgroup = c(2,4))
无法删除cgroups生成的空列。这是表格看起来不错并且是有意识的设计选择所必需的。
关于分页符,我怀疑是否有任何优雅的方式来做到这一点。替代方案可能是ReporteRs包。我自己没有使用它,但它与Word更紧密地结合在一起,可能是一个解决方案。