#' @title rCreate Wordcloud
#' @description Blank Description.
#' @param d Text Data
#' @keywords package
#' @return NULL
#' @export
#' @examples wordcloud.create()
#' wordcloud.create(nk.corpus.ultimus)
#' wordcloud.create(nk.corpus.ultimus, HTML)
wordcloud.create <- function(c, HTML) {
# Word Cloud Libraries
nk.corpus.ultimus <- c
if(missing(HTML)) {
if('wordcloud' %in% rownames(installed.packages()) == TRUE) {
require(wordcloud)} else {
install.packages("wordcloud", repos = "http://cran.us.r-project.org")
require(wordcloud)}
# Format Corpus for Most Frequent Words
nk.freq.tdm <- as.matrix(TermDocumentMatrix(nk.corpus.ultimus, control = list(wordLengths=c(1, Inf))))
nk.freq.mat <- data.frame(ST = rownames(nk.freq.tdm), Freq = rowSums(nk.freq.tdm), row.names = NULL)
nk.flux <- sort(rowSums(nk.freq.tdm), decreasing = TRUE)
nk.wordfreq <- data.frame(word = names(nk.flux), freq = nk.flux)
# Create Basic Word Cloud Plot
nk.wordcloud <- wordcloud(words = nk.wordfreq$word, freq = nk.wordfreq$freq, min.freq = 1,
max.words = 200, random.order = FALSE, rot.per = 0.35,
colors=brewer.pal(8, "Dark2"))
return(nk.wordcloud)
} else {
if('wordcloud2' %in% rownames(installed.packages()) == TRUE) {
require(wordcloud2)} else {
install.packages("wordcloud2", repos = "http://cran.us.r-project.org")
require(wordcloud2)}
# Format Corpus for Most Frequent Words
nk.freq.tdm <- as.matrix(TermDocumentMatrix(nk.corpus.ultimus, control = list(wordLengths=c(1, Inf))))
nk.freq.mat <- data.frame(ST = rownames(nk.freq.tdm), Freq = rowSums(nk.freq.tdm), row.names = NULL)
nk.flux <- sort(rowSums(nk.freq.tdm), decreasing = TRUE)
nk.wordfreq <- data.frame(word = names(nk.flux), freq = nk.flux)
# Create Interactive HTML Word Cloud Plot
# Shows Word Frequency on Hover
nk.wordcloud2 <- wordcloud2(nk.wordfreq, size = 1.0)
return(nk.wordcloud2)
}
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.