R语言 | 制作词云图

Python网络爬虫与文本数据分析

wordcloud2文档 

https://github.com/lchiffon/wordcloud2

安装

install.packages("wordcloud2")

词云图可视化

02-词频统计已经帮我们计算好了小说《三体》的词频结果三体词频统计.xlsx

导入数据

wordfreqs <- readxl::read_excel("output/三体词频统计.xlsx")
wordfreqs


词云图

默认

直接传入wordfreqs数据即可生成词云图

library(wordcloud2)

wordcloud2(wordfreqs)

wordcloud2参数

我们看一下wordcloud2的参数

wordcloud2(data, 
           size = 1, 
           fontFamily = 'Segoe UI', 
           fontWeight = 'bold', 
           color = 'random-dark', 
           backgroundColor = "white", 
           shuffle = TRUE, )
  • size 默认1,越大,词越大

  • fontFamily 字体;比如字体“微软雅黑”

  • fontWeight 字体是否加粗,可选参数有normal, bold, 600

  • color 字体颜色;可选参数random-dark、 random-light

  • backgroundColor 任意的颜色单词

  • shuffle 布尔值;词云图的词语位置随机性

library(wordcloud2)

wordcloud2(wordfreqs, 
           fontFamily = "微软雅黑",
           color="random-light")

wordcloud2(wordfreqs, 
           fontFamily = "微软雅黑",
           color="random-dark")

wordcloud2(wordfreqs, 
           size=2,
           fontFamily = "微软雅黑",
           color="random-dark")

wordcloud2(wordfreqs, 
           size=2,
           fontFamily = "微软雅黑",
           color="random-dark",
           backgroundColor = 'grey')

R语言相关

R语言 | 读写txt、csv、excel文件 
R语言 | 数据操作tidyr包

R语言 | 数据操作dplyr包  
R语言 | jiebaR中文分词包


Python相关[更新] Python网络爬虫与文本数据分析 
Pingouin: 基于pandas和numpy的统计包

读完本文你就了解什么是文本分析

文本分析在经管领域中的应用概述  
综述:文本分析在市场营销研究中的应用

plotnine: Python版的ggplot2作图库
小案例: Pandas的apply方法  
stylecloud:简洁易用的词云库 
用Python绘制近20年地方财政收入变迁史视频  
Wow~70G上市公司定期报告数据集

漂亮~pandas可以无缝衔接Bokeh  
YelpDaset: 酒店管理类数据集10+G  



后台回复关键词【R词云图】获取本文代码和数据
  • 分享”和“在看”是更好的支持!

  • 9
    点赞
  • 79
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: 可以使用R语言中的wordcloud2包来制作词云图。首先需要将文本数据导入R语言中,可以使用readLines()函数读取文本文件,然后使用jiebaR包进行中文分词。接着使用wordcloud2()函数生成词云图,其中可以设置词云图颜色、字体、形状等参数。最后使用htmlwidgets包将词云图保存为HTML格式的文件,或者直接在RStudio中显示词云图。 ### 回答2: 在R语言中,我们可以使用"wordcloud"包来制作词云图,并且可以根据需要自定义词云图的图片。 下面是一个使用R语言代码生成词云图的示例: ```R # 安装和加载所需的包 install.packages("wordcloud") library(wordcloud) # 创建词频向量 text <- c("苹果", "香蕉", "橙子", "苹果", "橙子", "水果", "香蕉", "葡萄", "水果", "橘子") # 根据词频生成词云图 wordcloud(words = text) # 自定义词云图的图片 myImage <- readPNG("custom_image.png") wordcloud(words = text, scale = c(4, 0.5), random.order = FALSE, random.color = TRUE, rot.per = 0.3, color = brewer.pal(8, "Dark2"), max.words = 100, min.freq = 1, random.seed = NULL, ordered.colors = FALSE, use.r.layout = FALSE, layout.shapes = 1, layout.freqs = NULL, fixed.asp = TRUE, colors = gray.colors, vfont = NULL, font = myImage, heights = NULL, widths = NULL, targ.placement = NULL, par.pos = NULL) ``` 在上述代码中,我们首先安装并加载"wordcloud"包。然后,创建一个包含词频信息的向量,其中包含一些水果的名称。使用`wordcloud`函数并传入词频向量,我们可以生成默认的词云图。 要自定义词云图的图片,我们首先需要准备好自定义的图像文件(例如名为"custom_image.png"的PNG文件)。然后,通过`readPNG`函数将图像文件读取为R中的对象。 最后,在`wordcloud`函数的参数中,我们可以使用`font`参数将自定义图像应用于词云图。使用其他参数,例如`scale`和`color`,可以进一步调整词云图的样式。 需要注意的是,词云图的样式可以根据您的需求进行调整,并且可以使用不同的包和方法来生成词云图,此处仅提供了一个基本的示例。 ### 回答3: 在R语言中,我们可以使用`wordcloud`包来生成词云图。首先,我们需要准备一个文本数据集,这可以是一个包含许多文本的文档或一个以字符串形式表示的文本。 接下来,我们需要使用`tm`包或其他文本挖掘包进行文本预处理,如去除标点符号、停用词、数字等。然后将处理过的文本转换为词频矩阵(term frequency matrix),该矩阵将每个词的出现频率记录下来。 接着,我们可以使用`wordcloud`包中的`wordcloud`函数生成词云图。该函数可以接受词频矩阵作为输入,并根据词频生成词云图。 如果你想使用自定义图片作为词云的外形,可以使用`wordcloud2`包中的`wordcloud2`函数。该函数与`wordcloud`函数类似,但还可以指定自定义的形状图片。 为了使用自定义图片,你需要先将图片转换为“单词云”,其中颜色比重对应于形状中的像素值。你可以使用`imager`包中的`as.shape()`函数将图片转换为形状。 一旦你有了自定义图片,你可以将其传递给`wordcloud2`函数的`shape`参数。该参数接受一个形状对象,可以是从图片中创建的形状。 下面是一个示例代码: ```R library(wordcloud) # 准备文本数据集 text <- "这是一段示例文本,请将此文本替换为你自己的文本。" # 使用tm包进行文本预处理 library(tm) corpus <- Corpus(VectorSource(text)) corpus <- tm_map(corpus, content_transformer(tolower)) corpus <- tm_map(corpus, removePunctuation) corpus <- tm_map(corpus, removeNumbers) corpus <- tm_map(corpus, removeWords, stopwords("en")) # 将处理过的文本转换为词频矩阵 tdm <- TermDocumentMatrix(corpus) freq <- as.matrix(tdm) # 生成词云图 wordcloud(words = rownames(freq), freq = freq, scale=c(8, 2), min.freq = 1, max.words = 100, random.order = FALSE, colors = brewer.pal(8, "Dark2")) # 使用自定义图片生成词云图 library(wordcloud2) library(imager) # 转换自定义图片为形状 custom_shape <- as.shape(load.image("path/to/image.png")) # 生成词云图 wordcloud2(data = freq, shape = custom_shape) ``` 希望以上的回答对你有帮助。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值