demo/wordcloud.R

require(tm)
require(wordcloud)
require(RColorBrewer)

carl <- read.csv("searchterms.csv", colClasses=c("character", "numeric"))

words <- character(sum(carl[[2]]))
m <- 1
for(i in 1:length(carl[[1]])){
  n <- carl[[2]][i]
  x <- carl[[1]][i]
  words[m:(m+(n-1))] <- rep(x, n)
  m <- m+n
}

 carl <- Corpus(DataframeSource(carl))
 carl <- tm_map(carl, removePunctuation)
 carl <- tm_map(carl, tolower)

 carl.tdm <- TermDocumentMatrix(carl)
 carl.m <- as.matrix(carl.tdm)
 carl.v <- sort(rowSums(carl.m), decreasing=TRUE)
 carl.d <- data.frame(word=names(carl.v), freq=carl.v)

pal2 <- brewer.pal(8,"Dark2")

png("wordcloud.png", width=800,height=800) 
#larger canvas doesn't increase plot size
wordcloud(carl.d$word,carl.d$freq, scale=c(8,.4),min.freq=1,
max.words=Inf, random.order=FALSE, rot.per=.15, colors=pal2)
dev.off()

require(socialR)
upload("wordcloud.png", script="wordcloud.R")
cboettig/socialR documentation built on May 13, 2019, 2:11 p.m.