r - R中两种不同颜色的自定义词云

标签 r word-cloud

我正在尝试在 R 中创建一个词云,其中我有一个包含正面和负面单词的矩阵,但是,我想以两种不同的颜色(例如绿色和红色)显示正面和负面单词。有人可以帮我解决这个问题吗?谢谢!

library(qdap)

x1 = x[a0]    

pol = polarity(x1)        
wc = pol$all[,2]          
val = pol$all[,3]         
p  = pol$all[,4]          
n  = pol$all[,5]          

positive_words = unique(setdiff(unlist(p),"-"))  # Positive words list
negative_words = unique(setdiff(unlist(n),"-"))  # Negative words list
total_words1 =cbind(positive_words,negative_words)

pos.tdm = dtm[,which(colnames(dtm) %in% total_words1)]
m = as.matrix(pos.tdm)
v1 = sort(colSums(m), decreasing = TRUE)

windows() # opens new image window
wordcloud(names(v1), v1, scale=c(4,1),1, max.words=100,colors=brewer.pal(8, "Dark2"))
title(sub = "Words - Wordcloud")

最佳答案

是的。您可以通过在 colors 中列出每个单词的颜色,然后使用 ordered.colors=TRUE 来选择每个单词的颜色。我给出了一个仅包含红色和绿色单词的简单示例,但是您可以根据单词的频率来改变红色和绿色的深浅。

Pos = read.table(text="Word    Count
Great       10
Good        25 
Fabulous    7",
header=TRUE, stringsAsFactors = TRUE)

Neg = read.table(text="Word    Count
Bad         23
Stinks      5
Terrible    15",
header=TRUE, stringsAsFactors = TRUE)

AllWords = rbind(Pos, Neg)
Colors = c(rep("green", nrow(Pos)), rep("red", nrow(Neg)))

wordcloud(AllWords $Word, AllWords $Count, 
        colors=Colors, ordered.colors=TRUE)

WordCloud

关于r - R中两种不同颜色的自定义词云,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44890569/

相关文章:

r - 如何在一张覆盖有透明度的条形图上绘制两个字符变量的频率

javascript - 词云更新数据/向云添加词的工作示例?

r - 将价格变动数据转换为 OHLC 4HR 柱形图

r - 获取在knitr中编织的文档类型

r - 根据 R 中的单词序列保留数据帧的特定行

r - 安装 R 词云包时出现问题 - Mint 17.1

linux - R中没有 "tm"的词云

matplotlib - python中的词云具有三个单独的值

javascript - 词云变得模糊

css - 如何在 {xaringan} 演示文稿中使 {stargazer} 表更小?