标签: officer

R官包:当有多个几乎相同的占位符时如何指定某个占位符

我在 Powerpoint 幻灯片上使用 R 官员包,需要将文本插入到 5 个相同的占位符中,所有占位符都沿着幻灯片底部彼此相邻地排成一排。在 ph_with_text 函数被弃用之前,可以使用主体和索引参数来准确指定要插入文本的占位符。但是,我找不到使用较新的 ph_with 函数正确执行此操作的方法。

对于上下文,文本持有者的布局属性如下:

type id    ph_label             offx      offy       cx       cy
body 25    Text Placeholder 24  2.4526826 5.9722200  1.340278 0.7065978
body 26    Text Placeholder 24  4.2022332 5.9722200  1.340278 0.7065978
body 27    Text Placeholder 24  5.9965278 5.9722211  1.340278 0.7065978
body 28    Text Placeholder 24  7.7013342 5.9722200  1.340278 0.7065978
body 29    Text Placeholder 24  9.4496063 5.9722200  1.340278 0.7065978
Run Code Online (Sandbox Code Playgroud)

如果我使用 ph_location_label,我只能指定第一个,如下所示:

ph_with(location = ph_location_label(ph_label = "Text Placeholder 24"), value = "Blah blah"
Run Code Online (Sandbox Code Playgroud)

我可以使用position_right位置参数来指定最后一个:

ph_with(location = …
Run Code Online (Sandbox Code Playgroud)

powerpoint r officer

8
推荐指数
1
解决办法
1407
查看次数

在 r 中绑定或合并多个 powerpoint

我一直在使用官员包来创建相应的 PowerPoint 幻灯片,但是此时,我想将它们全部合并/绑定为一个幻灯片,但无法弄清楚。如果有任何软件包可以帮助将多个 PowerPoint 平台合并为一个,有人可以指导我吗?

powerpoint r officer

8
推荐指数
1
解决办法
304
查看次数

是否可以从 arial 更改 flextable 默认字体

我喜欢 David Gohel 的 Office 和 Flextable 包,它们确实是编写具有复杂布局的 Word 文档报告的灵活替代方案,而这在 R markdown 中是无法实现的。

我已经使用officer为段落和表格创建了自定义样式,但现在我使用flextable来自定义单个单元格的格式,尽管它们似乎总是采用arial字体,无论word文档中的字体(calibri)如何。

flextable 使用的 word 文档中是否有特定的样式,或者是否有修改字体的命令。

到目前为止,我最接近的答案是 options("ReporteRs-default-font" = "Arial") 函数。官员或弹性人员是否有等效的命令?

非常感谢您的指导。

fonts r flextable officer

7
推荐指数
1
解决办法
4091
查看次数

在flextable中设置方程的字体系列和大小

我正在寻找一个选项来设置flextable.

一般来说,字体系列和表格、行和列的大小可以通过糖函数flextable::font和来设置flextable::fontsize。但是,无论是在 HTML 输出中还是在导出到 docx 时,两者都不会影响字体系列和方程的大小。

运行下面的 reprex 会为文本列提供正确的字体系列和大小,但不会为公式列提供正确的字体系列和大小。

library(flextable)

# Note: Running the reprex requires the `equatags` package. 
# Also equatags::mathjax_install() must be executed
# to install necessary dependencies. See ?flextable::as_equation.

eqs <- c(
  "(ax^2 + bx + c = 0)",
  "a \\ne 0",
  "x = {-b \\pm \\sqrt{b^2-4ac} \\over 2a}"
)
text = LETTERS[1:3]
df <- data.frame(text = text, formula = eqs)
df
#>   text                                 formula
#> 1 …
Run Code Online (Sandbox Code Playgroud)

r flextable officer

7
推荐指数
1
解决办法
707
查看次数

R Shiny在不同的过程中运行任务/脚本

在我的Shiny应用程序中,用户可以生成重型powerpoint报告.当它包含大量幻灯片时,可能需要30分钟才能完成.因此,我希望在独立的流程/任务中处理这些任务,即使应用程序关闭也可以工作 - 例如,用户单击按钮生成报告,关闭应用程序,报告准备好时,应用程序通过电子邮件通知用户.是否有任何良好做法或经过验证的解决方案?

我的第一个想法是使用future套装plan(multisession)- 但我不确定当用户关闭应用程序时会发生什么 - future会话关闭或不关闭?

parallel-processing asynchronous r shiny officer

6
推荐指数
1
解决办法
908
查看次数

如何向 PowerPoint 添加注释(官员)

我正在使用Officer包从R创建一个PowerPoint文档,并且我想在我的幻灯片中添加注释。

是否可以从 R 向特定的 powerpoint 幻灯片添加注释(最好使用军官包)?

officeR我真的不确定(或任何其他)R 包中是否存在适当的函数。

我正在考虑的一个解决方法是创建一个包含注释的自定义幻灯片布局(在我正在使用的 PowerPoint 模板文件中),然后在我在 R 中创建幻灯片时简单地使用此布局。但不幸的是,PowerPoint 似乎没有不允许您在主视图中向幻灯片布局添加注释。

powerpoint r officer

6
推荐指数
1
解决办法
795
查看次数

从flextable中的字符串动态设置colnames

flextable帮助的细节描述了将新的标头,对每一个新的头名手动键入每个现有的头名,如下所示:

library(flextable)
ft_1 <- regulartable(head(iris))
ft_1 <- set_header_labels(ft_1, Sepal.Length = "SL",
                          Sepal.Width = "SW", Petal.Length = "PL",
                          Petal.Width = "PW"
)
ft_1
Run Code Online (Sandbox Code Playgroud)

我怎样才能从一个字符串中添加所有新的标题名称,例如

(names2<-c('SL','SW','PL','PW','SPECIES'))
[1] "SL"      "SW"      "PL"      "PW"      "SPECIES"
Run Code Online (Sandbox Code Playgroud)

?

到目前为止,我已经管理了一个非常hacky的解决方案:

names(names2)<-names(ft_1$header$dataset[1,])

ft_1$header$dataset[1,]<-names2
Run Code Online (Sandbox Code Playgroud)

r flextable officer

6
推荐指数
1
解决办法
470
查看次数

使用officer包编辑Word表格

我正在尝试使用“officer”编辑Word表格的值。非常简单地找到包含它的“段落”

library(officer)

doc = read_docx('template.docx')
doc = cursor_begin(doc)
doc = cursor_reach(doc,"Some text")
print(doc)
Run Code Online (Sandbox Code Playgroud)

我得到一个如下所示的文档:

* Content at cursor location:
 row_id is_header cell_id                    text col_span row_span
1.1       1     FALSE       1                   D            1        1
1.5       2     FALSE       1                                1        1
1.9       3     FALSE       1             Some text          1        1
1.13      4     FALSE       1                                1        1
2.2       1     FALSE       2            More text           1        1
Run Code Online (Sandbox Code Playgroud)

但是,然后呢?似乎没有任何方法可以直接更改该表的内容......

r officer

5
推荐指数
1
解决办法
1085
查看次数

在 R 的 flextable 包中将数字列格式化为百分比

例如我正在使用虹膜数据:

library(flextable)
library(officer)
library(magrittr)

ft_test <- head(iris) %>% flextable() %>% 
  colformat_num(j = c("Sepal.Length", "Sepal.Width",
                             "Petal.Length", "Petal.Width"), digits = 1)
Run Code Online (Sandbox Code Playgroud)

如果我希望有百分比格式的“Petal.Width”值,正确的语法是什么?我找不到 colformat_percent 函数。有没有办法使用flextable语法来弥补它?

r flextable officer

5
推荐指数
2
解决办法
3317
查看次数

OfficeR 错误:“Docx 已编辑”,但文件尚不存在。可能发生什么事?

我有一个很难复制的问题,这就是为什么我只想知道这个错误背后可能是什么。当我创建一个 docx 并想要将其保存在我办公室的 NAS 中时,我会收到此错误(其中 doc2 是 docx,Direc4 是我的方向):

\n
\n

print.rdocx(doc2, target = Direc4) 中的错误:
\nH:\\DpProMon\\DPM\\Programa Monetario Diario\\2021\\Actas\\23 Ago Informe\ncomit\xc3\xa9 monetario y cambiario.docx 是已经编辑了。您必须关闭该文档\n才能写入该文件。

\n
\n

然而,该文件还不存在。\n有时,当我尝试使用 Office 保存实际的 Word 时,我可能会收到一条错误消息,表明其他人正在编辑该文件(实际上并非如此),并且该错误会在几秒钟后消失。但在 R 中这个错误不会停止。一些帮助?

\n

r officer

5
推荐指数
1
解决办法
695
查看次数