9

我一直在查看 diagrammeR 包 ( http://rich-iannone.github.io/DiagrammeR/ ) 以在 rMarkdown 中生成图表。这在以 HTML 格式呈现文档时效果很好;现在我的问题是是否有可能将文档输出为 MS Word 文档?

例如,考虑一下:

---
title: "Test"
author: "Test"
date: "Monday, May 18, 2015"
output: html_document
---

```{r, echo=FALSE, warning=FALSE}
if (!require("DiagrammeR")) library("DiagrammeR")
```

Check out this diagram:

```{r, echo=FALSE, results='asis'}
DiagrammeR::grViz("
      digraph rmarkdown {
      node [shape = box ]
      'A' -> 'B'
      }
      ")
```

使用 HTML 作为输出格式就像一个魅力。但是,当我切换到 MS Word 时,我得到的只是:

Error: Functions that produce HTML output found in document targeting docx output.
Please change the output type of this document to HTML.

任何想法,将不胜感激。

非常感谢,菲利普

4

1 回答 1

2

trelliscope很有用:https ://github.com/tesseradata/trelliscope

安装http://phantomjs.org/download.html后,您可以通过以下方式生成 word doc 文件:

---
title: "Test"
author: "Test"
date: "Monday, May 18, 2015"
output: word_document
---

```{r include=FALSE}
if (!require("DiagrammeR")) library("DiagrammeR")
library(trelliscope)
```


Check out this diagram:

```{r, include=FALSE}
p = DiagrammeR::grViz("
      digraph rmarkdown {
      node [shape = box ]
      'A' -> 'B'
      }
      ")
widgetThumbnail(p, paste0(getwd(), "/hoge.png"))
```

![](hoge.png)

这是屏幕截图。它看起来很完美:)

在此处输入图像描述

于 2015-08-19T11:35:13.050 回答