【词云图绘制实战】——数据准备、清洗、多形式展示

简介: 【词云图绘制实战】——数据准备、清洗、多形式展示

词云图是一种用于展示文本数据中高频关键词的可视化表达方式。它通过文字、色彩和图形的搭配,以直观且冲击力强的视觉效果展现文本的主要信息。该篇文章利用R语言分别针对手动输入和文件读取的文本数据,进行中文分词,然后使用不同的方式进行词云图绘制。

1 手动输入文本

1.1 加载包

  运行程序:

library(jiebaRD)
library(jiebaR)
library(RColorBrewer)
library(wordcloud)
library(wordcloud2)
library(BH)
library(R6)
library(Rcpp)
library(rlang)

1.2 分词处理

1.2.1 普通分词方式

  运行程序:

a=" 2020年的鼠年,注定不平凡,全国人民都共同抗击疫情中度过,希望尽打赢疫情防控阻击战,风雨过后,春暖花开,大爱无疆,致敬所有的白衣天使,所有的英雄。 武汉加油,中国加油! 祝福我的祖国国泰民安! "
engine1=worker()
engine2=worker("hmm")
b1=segment(a,engine1)
b1

  运行结果:

[1] "2020"     "年"       "的"       "鼠年"     "注定"     "不"      
 [7] "平凡"     "全国"     "人民"     "都"       "共同"     "抗击"    
[13] "疫情"     "中"       "度过"     "希望"     "尽"       "打赢"    
[19] "疫情"     "防控"     "阻击战"   "风雨"     "过后"     "春暖花开"
[25] "大爱"     "无疆"     "致敬"     "所有"     "的"       "白衣天使"
[31] "所有"     "的"       "英雄"     "武汉"     "加油"     "中国"    
[37] "加油"     "祝福"     "我"       "的"       "祖国"     "国泰民安"

1.2.2 hmm分词

  运行程序:

b2=segment(b1,engine2)
b2

运行结果:

[1] "2020"     "年"       "的"       "鼠年"     "注定"     "不"      
[7] "平凡"     "全国"     "人民"     "都"       "共同"     "抗击"    
[13] "疫情"     "中"       "度过"     "希望"     "尽"       "打赢"    
[19] "疫情"     "防控"     "阻击战"   "风雨"     "过后"     "春暖花开"
[25] "大爱"     "无疆"     "致敬"     "所有"     "的"       "白衣天"  
[31] "使"       "所有"     "的"       "英雄"     "武汉"     "加油"    
[37] "中国"     "加油"     "祝福"     "我"       "的"       "祖国"    
[43] "国泰民安"

1.2 词云图绘制

1.2.1 wordcloud词云图

  运行程序:

word=freq(b2)                                   # 统计词频
wordcloud(word$char,word$freq,min.freq=1)       #wordcloud下的词云图

  运行结果:

1.2.2 wordcloud2词云图

  运行程序:

wordcloud2(word,color="red",shape="star")       #wordcloud2下的词云图

  运行结果:

2 读取文本数据

2.1 读取文本数据

  运行程序:

setwd("C:\\Users\\LE\\Desktop")
a1 <- scan("yiqingganxiang.txt",sep='\n',what='',encoding="GBK")

2.2 分词处理

  运行程序:

seg <- qseg[a1]                                        #使用qseg类型分词,并把结果保存到对象seg中
seg <- table(seg)                                             #统计词频
seg <- seg[!grepl('[0-9]+',names(seg))]                       #去除数字
seg <- seg[!grepl('a-zA-Z',names(seg))]                       #去除字母
length(seg)     
seg <- sort(seg, decreasing = TRUE)[1:304]                    #降序排序,并提取出出现的所有词
seg                                                           #查看出现频率最高的6个词
data=data.frame(seg)

2.3 词云图绘制

2.3.1 wordcloud词云图

  运行程序:

wordcloud(data$seg , data$Freq, colors = rainbow(100),random.order=F)

  运行结果:

2.3.2 wordcloud2词云图

  运行程序:

wordcloud2(data, size = 0.5, minSize = 0,  shape = "star", ellipticity = 0.85)
                                                              #wordcloud2下星星词云图

  运行结果:

2.3.3 letterCloud词云图

  运行程序:

letterCloud(data,word="R",size = 2)                           #利用letterCloud构造R形状的词云图

  运行结果:

2.3.4 自定义形状词云图

  运行程序:

wordcloud2(data, figPath = "C:/Users/LE/Desktop/人物.jpg", size = 1)

figPath:图片保存位置,主图形状位置最好为黑色。

  运行结果:

2.3.5 自动提取demoFreqC中的文本数据做词云图

  运行程序:

data(demoFreqC)
letterCloud(demoFreqC,word="挖",size = 2)                     #“挖”形

  运行结果:


相关文章
|
人工智能 数据可视化 Go
R绘图实战|GSEA富集分析图
GSEA(Gene Set EnrichmentAnalysis),即基因集富集分析,它的基本思想是使用预定义的基因,将基因按照在两类样本中的差异表达程度排序,然后检验预先设定的基因集合是否在这个排序表的顶端或者底端富集。
2501 0
R绘图实战|GSEA富集分析图
|
21天前
|
编解码 数据可视化
R语言动态可视化:绘制历史全球平均温度的累积动态折线图动画gif视频图
R语言动态可视化:绘制历史全球平均温度的累积动态折线图动画gif视频图
|
21天前
|
数据可视化
实现绘制Sankey桑基图(河流图、分流图)流程数据可视化
实现绘制Sankey桑基图(河流图、分流图)流程数据可视化
|
21天前
|
数据可视化 数据挖掘
Seaborn中的分类图:直观展示分类数据的差异
【4月更文挑战第17天】Seaborn是数据分析中的利器,尤其在展示分类数据差异方面。本文介绍了5种主要图表类型:1) 使用`barplot`创建条形图,便于比较不同分类的数值差异;2) `boxplot`生成箱线图,展示数据分布和离散程度;3) `stripplot`和`swarmplot`显示单个观测值分布,理解分类内变异性和差异;4) `scatterplot`结合`hue`参数,呈现分类在连续变量关系中的差异;5) 自定义分类图,调整样式以满足特定需求。通过这些图表,可以更深入地分析和传达分类数据的特性。
|
21天前
|
数据可视化
Tableau可视化设计案例-03基本表、树形图、气泡图、词云
Tableau可视化设计案例-03基本表、树形图、气泡图、词云
|
21天前
|
机器学习/深度学习
如何使用一行代码在一张图形上展示不同的模型
如何使用一行代码在一张图形上展示不同的模型
34 0
|
10月前
|
数据可视化 数据挖掘 Linux
科研绘图丨使用R语言Pheatmap包快速绘制基因表达量热图的方法,支持聚类和配色自定义修改
科研绘图丨使用R语言Pheatmap包快速绘制基因表达量热图的方法,支持聚类和配色自定义修改
|
11月前
Echarts实战案例代码(9):图表纹理填充的解决方案(柱图为例)
Echarts实战案例代码(9):图表纹理填充的解决方案(柱图为例)
1035 0
|
12月前
|
移动开发 数据可视化 HTML5
R可视化学习—词云图
词云。又称文字云。“词云”就是通过形成“关键词云层”或“关键词渲染”,对网络文本中出现频率较高的“关键词”的视觉上的突出,它会过滤掉大量的文本信息,使浏览网页者只要一眼扫过文本就可以领略文本的主旨。
121 0
图表解析系列之漏斗图
漏斗图适用于业务流程比较规范、周期长、环节多的单流程单向分析,通过漏斗各环节业务数据的比较能够直观地发现和说明问题所在的环节,进而做出决策。

热门文章

最新文章