美文网首页生物信息学R学习R语言做生信
officer、flextable包生成word报告

officer、flextable包生成word报告

作者: quan575 | 来源:发表于2018-06-23 23:19 被阅读6次

officer是一个生成(处理)Word(docx)和PowerPoint(pptx)的R包。与ReportRs包相比速度要更快,依赖包也更少(好像也是这个作者写的,但是ReportRs要依赖于rjava,不便维护),常结合flextable包(生成表格),mschart包(生成office图表),rvg(结合ggplot2生成动态图表)。

word文档主要函数分类

1.添加内容作为段落:图像,表格,文字。使用body_add_*功能

示例

library(officer)
library(magrittr) # Package `magrittr` makes officer usage easier.
library(ggplot2)

my_doc <- read_docx()  #初始化一个docx , 里面不填路径使用默认模板
styles_info(my_doc)  #显示信息

gg <- ggplot(data = iris, aes(Sepal.Length, Petal.Length)) + 
    geom_point()

  my_doc %>%   #可以使用magrittr方式一步步添加
    body_add_par(value = "Table of content", style = "heading 1") %>% 
    body_add_toc(level = 2) %>% 
    body_add_break() %>% 

    body_add_par(value = "dataset iris", style = "heading 2") %>% 
    body_add_table(value = head(iris), style = "table_template" ) %>% 

    body_add_par(value = "plot examples", style = "heading 1") %>% 
    body_add_gg(value = gg, style = "centered" ) %>% 

    print(target = "body_add_demo.docx")
输出结果

相关网站

相关文章

网友评论

    本文标题:officer、flextable包生成word报告

    本文链接:https://www.haomeiwen.com/subject/biwdyftx.html