词云
2018-09-03
2018-09-03
“词云”是对文本中出现频率较高的“关键词”给予视觉上的突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本信息,使浏览者只要一眼扫过文本就可以初步领略文本的主旨。
1 绘制词云图
词云图是通过把带有分词及词频的数据按照频次高低绘制的图形。 绘制词云图要用到wordcloud2和letterCloud,wordcloud2提供了基本的词云功能,letterCloud可以使用选定的词绘制词云,词可以是英文,也可以是中文。
library(wordcloud2) # 绘制词云图加载包
library(readxl) # 数据加载包
a=read_excel("E:/R总体代码/词云数据及代码/词云需求图P.xlsx") # 读取数据
str(a)
## Classes 'tbl_df', 'tbl' and 'data.frame': 150 obs. of 2 variables:
## $ 词 : chr "cooker" "html" "Http" "IP" ...
## $ 词频: num 11 74 65 66 56 57 89 68 42 82 ...
通过数据结构信息可得知,该数据包含两个变量,分别为分词和词频,数据共140条,也就是共有140个词。
1.1 绘制系统自带词云图
通过利用wordcloud2绘制词云图,size:字体大小,一般默认为1,数值越小,生成的形状轮廓越明显;
shape:表示词云形状选择,默认是‘circle’,即圆形;还可以选择‘cardioid’(苹果形或心形);‘star’(星形);‘diamond’(钻石);‘triangle-forward’(三角形);‘triangle’(三角形);‘pentagon’(五边形)。
下面是对系统自带的形状进行绘制词云图。
star<-wordcloud2(a, size = 0.22,shape='star')
执行上述代码,将形状设置为星星形状,字体大小设置为0.22。
通过观察词云图和数据得知,频次较高的词在词云图中的字体越大。
circle<-wordcloud2(a, size = 0.22,shape='circle')
执行上述代码,将形状设置为圆圈形状,字体大小设置为0.22。
1.2 自定义绘制词云图
利用再用letterCloud绘图,可以根据设定的字符,生成一个与之形状相同的词云。
R<-letterCloud(a,word= "R",wordSize=0.4) # 绘制大写字母R词云图
2 本章汇总
参数 | 类别 | 功能 |
---|---|---|
wordcloud2 | 包 | 绘制词云图 |
readxl | 包 | 读取EXCLE格式数据 |
size | 参数 | 字体大小 |
shape | 形状 | 图形形状 |
letterCloud | 函数 | 设定字符,绘制词云图 |