WordCloud颜色基于其他数据列

时间:2017-04-24 15:24:22

标签: r graph rstudio word-cloud

我正在寻找应用世界云功能,但根据其他属性更改颜色格式。

以下是我的数据d的外观,显然我有更多城市名称。 我的想法是,我希望根据freq的数量来确定单词的大小,但单词的颜色应该基于'year'列。 这意味着巴黎和纽约的颜色相同,东京和罗马也会有相同的颜色。

name    freq    year  status
paris   5       2010  booked
nyc     25      2010  booked
tokyo   10      2011  notbooked
rome    9       2011  notbooked

wordcloud(words = d$name, freq = d$freq, min.freq = 1,scale = c(2, 0.2),
                    max.words=200, random.order=FALSE, rot.per=0.1, 
                     colors=brewer.pal(8, "Dark2"))

目前我还没有看到如何在wordcloud函数中引入d $ year。提前感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

既然你说你想要东京&罗马有相同的颜色,我认为你的意思是罗马的一年是2011年。

df=read.table(text="name    freq    year
paris   5       2010
nyc     25      2010
tokyo   10      2011
rome    9       2011",
header=TRUE)

library(wordcloud)
wordcloud(words = df$name, freq = df$freq, min.freq = 1,scale = c(2, 0.2),
                    max.words=200, random.order=FALSE, rot.per=0.1, 
                    ordered.colors=TRUE,
                     colors=brewer.pal(8, "Dark2")[factor(df$year)])

Word Cloud