Is there any way to show a wordcloud2 in Rmarkdown as a PDF or Word file?

别等时光非礼了梦想. 提交于 2019-12-30 07:22:13

问题


I'm trying to show a wordcloud2 wordcloud, but it only works in an html-knitted Rmd file. This works:

---
title: "Untitled"
output: html_document
---

```{r wordcloud}
library(wordcloud2)
wordcloud2(demoFreq)
```

But this does not:

---
title: "Untitled"
output: pdf_document
---

```{r wordcloud}
library(wordcloud2)
wordcloud2(demoFreq)
```

It will knit with always_allow_html: yes in the YAML, but the wordcloud doesn't show up:

---
title: "Untitled"
output: pdf_document
always_allow_html: yes
---

```{r wordcloud}
library(wordcloud2)
wordcloud2(demoFreq)
```

I'm thinking maybe to save the figure as an image, then load it in the .Rmd, but that seems clumsy. Better ideas?


回答1:


One way to do it, as I said, is to save as an image and load it in .Rmd. Not too bad actually:

---
title: "Untitled"
output: pdf_document
---

```{r wordcloud}
library(wordcloud2)
library(webshot)
library(htmlwidgets)
my_graph <- wordcloud2(demoFreq, size = 1.5)
saveWidget(my_graph, "tmp.html", selfcontained = F)
webshot("tmp.html", "wc1.png", delay = 5, vwidth = 2000, vheight = 2000)
```
![wordcloud](wc1.png)

The delay argument needs to be big enough to let the html fully render; if you watch a wordcloud2 generate, it takes a few seconds. 5 seconds seems enough for this, but you may have to increase it for bigger/more complex wordclouds, or if your computer is slow.



来源:https://stackoverflow.com/questions/47850921/is-there-any-way-to-show-a-wordcloud2-in-rmarkdown-as-a-pdf-or-word-file

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!