我使用wordcloud2包创建wordclouds,但似乎无法找到在网格中绘制它们的方法。我已经尝试过grid.arrange,但它会产生错误并且不允许我绘制云?
有没有解决办法呢?
这是我的代码
# main wordcloud function
w1 <- wordcloud2(w_virgin, size = 0.8, shape = 'circle',
rotateRatio = 0.5, minSize = 1)
w2 <- wordcloud2(w_united, size = 0.8, shape = 'circle',
rotateRatio = 0.5, minSize = 1)
grid.arrange(w1, w2)
答案 0 :(得分:1)
使用wordcloud
,您只需使用基础R par
安排图表:
par(mfrow=c(1,2)) # for 1 row, 2 cols
wordcloud(d1$word, d1$freq, max.words=100)
wordcloud(d2$word, d2$freq, max.words=100)
如果您有术语 - 文档矩阵(tdm
),您可以创建单词和频率的数据框,如下所示:
library(tm)
v <- sort(rowSums(as.matrix(tdm)),decreasing=TRUE)
d1 <- data.frame(word=names(v),freq=v)
就像MrFlick所说,如果你能提供一个可重复的例子,有人可能能够更准确地回答你的问题。
答案 1 :(得分:0)
wordcloud包中的wordcloud
函数可直接绘制而不会返回任何内容,这意味着您非常受限制于使用par
修改R输出设备。
如果使用的是ggplot2,则可以使用ggwordcloud中的近似替换ggwordcloud
,它会输出一个ggplot对象,可以将其与grid.arrange
from gridExtra一起设置为grob。