京公网安备 11010802034615号
经营许可证编号:京B2-20210330
相信大家一定见过各式各样,效果酷炫的词云图,你是不是也想亲自动手制作呢?别着急,今天小编跟大家分享的正是如何用R语言制作词云图,废话不多说,一起来看吧。
以下文章来源于:AI入门学习
作者:伍正祥
所谓词云,即词频到 词大小的映射,也就是说,在某段文本语料中,某个词出现的次数越多,在画词云时个头越大。
词云的用处很多,比如可以把自己的简历分词,按头像画词云、不同文章关键词对比、不同人物画像对比等,简单明了,还显得特别有逼格。
因此,大部分的词云工具,要求输入词以及对应的词频即可,部分网站可以直接输入文章,自动分词提取词频。本文主要介绍利用R语言进行词频分析,并绘制词云图,如果不想使用R语言,可以看上一篇文章《装逼神图—词云(在线制作)》,直接在线绘图。
一、词云相关R包的安装
1、词云相关的包
install.packages('wordcloud2')
install.packages('jsonlite')
如果安装的有问题,按下面的方法安装
install.packages('devtools')
devtools::install_github("lchiffon/wordcloud2")
安装好后,进行加载
library(wordcloud2)
2、分词要用的包
分词用的是结巴分词,安装与加载
install.packages('jiebaR')
library(jiebaR)
二、对预料进行分词
#构建分词器
mixseg = worker()
#添加自定义词典
#user_myself = read.csv("user_myself.csv",header=T)
#user_myself = as.vector(user_myself[[1]])
#new_user_word(mixseg,user_myself)
#添加停用词词典,添加了'而','的','我'等词
mixseg = worker(stop_word = "stopword.txt")
#分词开始,下面是朱自清的《匆匆》,不进行停用词处理和自定义词典
texts = '燕子去了,有再来的时候;杨柳枯了,有再青的时候;桃花谢了,有再开的时 候。但是,聪明的,你告诉我,我们的日子为什么一去不复返呢?——是有人偷了他 们罢:那是谁?又藏在何处呢?是他们自己逃走了罢——如今又到了哪里呢?我不知道他们给了我多少日子,但我的手确乎是渐渐空虚了。在默默里算着,八千多日子已经从我手中溜去,像针尖上一滴水滴在大海里,我的日子滴在时间的流里,没有声音,也没有影子。我不禁头涔涔而泪潸潸了。去的尽管去了,来的尽管来着;去来的中间,又怎样地匆匆呢?早上我起来的时候,小屋里射进两三方斜斜的太阳。太阳他有脚啊,轻轻悄悄地挪移了;我也茫茫然跟着旋转。于是——洗手的时候,日子从水盆里过去;吃饭的时候,日子从饭碗里过去;默默时,便从凝然的双眼前过去。我觉察他去的匆匆了,伸出手遮挽时,他又从遮挽着的手边过去,天黑时,我躺在床上,他便伶伶俐俐地从我身上跨过,从我脚边飞去了。等我睁开眼和太阳再见,这算又溜走了一日。我掩着面叹息。但是新来的日子的影儿又开始在叹息里闪过了。在逃去如飞的日子里,在千门万户的世界里的我能做些什么呢?只有徘徊罢了,只有匆匆罢了;在八千多日的匆匆里,除徘徊外,又剩些什么呢?过去的日子如轻烟,被微风吹散了,如薄雾,被初阳蒸融了;我留着些什么痕迹呢?我何曾留着像游丝样的痕迹呢?我赤裸裸来到这世界,转眼间也将赤裸裸的回去罢?但不能平的,为什么偏要白白走这一遭啊?你聪明的,告诉我,我们的日子为什么一去不复返呢?'
#分词
segment = segment(texts,mixseg)
#词频统计
segment = freq(segment)
#按词频降序排列
library(dplyr) #没有安装个
segment = arrange(segment,-freq)
#词云绘制
wordcloud2 (segment, size = 1,shape = 'circle')
letterCloud(segment,"C")
三、绘图包及基本函数介绍
wordcloud2包主要有两个函数:
wordcloud2 --- 绘制各种图形词云
letterCloud -----绘制各种 ‘字符’云
#用包中的数据集直接绘图
wordcloud2(demoFreq)
letterCloud(demoFreq,"R", size = 2)
#可以通过调整各种参数和形状
wordcloud2(demoFreq, size = 2)
wordcloud2(demoFreq, size = 1,shape = 'pentagon')
wordcloud2(demoFreq, size = 1,shape = 'star')
letterCloud(demoFreq,"LOVE", size = 2)
#上传图片进行绘图
wordcloud2(demoFreq, figPath = 'yun.jpg')
#常用函数详细参数及常用参数介绍
wordcloud2(data, size = 1, minSize = 0, gridSize = 0, fontFamily = NULL,fontWeight = 'normal', color = 'random-dark', backgroundColor = "white", minRotation = -pi/4, maxRotation = pi/4, rotateRatio = 0.4, shape = 'circle', ellipticity = 0.65, widgetsize = NULL)
常用参数:(1)data:词云生成数据,包含具体词语以及频率;(2)size:字体大小,默认为1,一般来说该值越小,生成的形状轮廓越明显;(3)fontFamily:字体,如‘微软雅黑’;(4)fontWeight:字体粗细,包含‘normal’,‘bold’以及‘600’;;(5)color:字体颜色,可以选择‘random-dark’以及‘random-light’,其实就是颜色色系;(6)backgroundColor:背景颜色,支持R语言中的常用颜色,如‘gray’,‘blcak’,但是还支持不了更加具体的颜色选择,如‘gray20’;(7)minRontatin与maxRontatin:字体旋转角度范围的最小值以及最大值,选定后,字体会在该范围内随机旋转;(8)rotationRation:字体旋转比例,如设定为1,则全部词语都会发生旋转;(9)shape:词云形状选择,默认是‘circle’,即圆形。还可以选择‘cardioid’(苹果形或心形),‘ star ’(星形),‘diamond’(钻石),‘triangle-forward’(三角形),‘triangle’(三角形),‘pentagon’(五边形)
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
CDA数据分析师 出品 作者:李诗怡 题目1 一家餐厅统计顾客的性别、年龄、消费金额等信息,在进行数据分析时,发现性别这一变量在 ...
2026-10-16核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-10-16核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-10-16一、为什么要区分这两种分布 在数据分析和统计学中,拿到一组数据后第一件事通常就是看它的分布形态。分布形态决定了你能用什么 ...
2026-10-15一、问题现象 在实际使用 Excel 透视表做数据分析时,经常会遇到这样的情况:数据源表格里明明新增了一行或一列金额数据,数据源 ...
2026-10-15核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-10-15一、什么是预测式发货 预测式发货(Anticipatory Shipping)是亚马逊于2013年12月获得授权的一项美国专利(专利号 US 8,615,473 ...
2026-10-14一、SQL在金融量化体系中的定位 量化投资的本质是用数据驱动决策,而数据处理贯穿量化研究的全生命周期。从原始行情数据清洗、因 ...
2026-10-14核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-10-14CDA数据分析师 出品 作者:李诗怡 四层结构 · 零件与房子 · 六大易错点 一、什么是指标体系 定义:指标体系是整套完整框架 ...
2026-10-13写在开头 先还原一个你大概率见过的场面。 立项会上有人说:我们得做用户画像。 于是团队关进会议室,白板写满便利贴,两小时后 ...
2026-10-13 很多数据分析师每天都在计算指标、制作报表,但当被问到“什么叫指标数据元”“指标数据标准包含哪些核心维度”“指标数据质 ...
2026-10-13在统计学与数据分析研究中,相关性分析分为数值变量分析与分类变量分析两大类。针对身高、销量、分数等连续数值变量,通常采用皮 ...
2026-10-12在Power BI可视化分析体系中,常规表格仅能展示枯燥的数值数据,存在数据对比不直观、强弱规律不突出、维度交叉分析低效等问题。 ...
2026-10-12 很多数据分析师能熟练写SQL、做透视表,但当被问到“数据是从哪里来的?经过哪些加工才进入数据仓库?ETL具体做了什么?”时 ...
2026-10-12在传统零售行业同质化竞争激烈、大众营销转化率持续走低的背景下,依托经验与直觉的粗放式营销逐渐失效。美国塔吉特百货(Target ...
2026-10-10随着智能客服、数字化服务、用户精细化运营的快速普及,传统零散、非标准化的客户服务数据与业务体系逐渐难以支撑高效服务治理。 ...
2026-10-10 很多数据分析师能熟练地写SQL、做透视表、算描述性统计,但当被问到“如何预测用户流失概率”“如何归因销量下滑的关键因素 ...
2026-10-10CDA数据分析师 出品 作者:李诗怡 定义区别 · 场景举例 · 指标分类 · 计算方法 知识体系总览 模块 包含内容 一、核 ...
2026-10-09在数据分析工作流中,业务数据大多存储在各类关系型数据库内,例如MySQL、PostgreSQL、SQLite等。Pandas是Python生态中主流的数 ...
2026-10-09