一、wordcloud安装说明
install.packages("wordcloud");
二、wordcloud2安装说明
我在RStudio编辑器直接输入:
if (!require(devtools)) install.packages("devtools")
devtools::install_github('lchiffon/wordcloud2')
即可等待程序完成安装。
三、wordcloud参数说明
3.1 函数原型
wordcloud(words,freq,scale=c(4,.5),min.freq=3,max.words=Inf,random.order=TRUE, random.color=FALSE, rot.per=.1,colors="black",ordered.colors=FALSE,use.r.layout=FALSE,...)
3.2 常用参数
(1)words——关键词列表
(2)freq——关键词对应的词频列表
(3)scale——字号列表。c(最大字号, 最小字号)
(4)min.freq——最小限制频数。低于此频数的关键词将不会被显示。
(5)max.words——限制词云图上关键词的数量。最后出现在词云图上的关键词数量不超过此限制。
(6)random.order——控制关键词在图上的排列顺序。T:关键词随机排列;F:关键词按频数从图中心位置往外降序排列,即频数大的词出现在中心位置。
(7)random.color——控制关键词的字体颜色。T:字体颜色随机分配;F:根据频数分配字体颜色。
(8)rot.per——控制关键词摆放角度。T:水平摆放;F:旋转90度。
(9)colors——字体颜色列表
(10)ordered.colors——控制字体颜色使用顺序。T:按照指定的顺序给出每个关键词字体颜色,(似乎是要求颜色列表中每个颜色一一对应关键词列表);F:任意给出字体颜色。
(11)use.r.layout=T;F
四、wordcloud2参数说明
4.1 函数原型
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)
4.2 常用参数:
(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’(五边形);
五,wordcloud2示例
这个包里面包含了两个数据集,demoFreqC和demoFreq,前者是一些中文数据,后者是一些英文数据。这两个数据都包含了两个变量,一个是文本,另一个是文本的数量。大家可以使用str()函数来查看数据的详细信息。这个包主要有两个函数letterCloud和wordcloud2。
1,
library(wordcloud2)
导入程辑包;
wordcloud2(demoFreq)
引用包中原有的数据画出第一个简单的实例图;
2,我们可以改变 “shape”参数,来改变其视图的形状;可以选择‘cardioid’(苹果形或心形),‘star’(星形),‘diamond’(钻石),‘triangle-forward’(三角形),‘triangle’(三角形),‘pentagon’(五边形);
例如:
wordcloud2(demoFreq, size = 1,shape='cardioid')
3,你还可以自定义词云的背景形状。不过图片必须是黑白照片,在这个包的examples文件夹下面有一张t.png的黑白照片,是一只鸟。
log<-system.file("examples/t.png",package="wordcloud2") #导入包里面的图片
wordcloud2(demoFreqC, size = 1,figPath =log) #size的大小可以说是调节图片形状的边缘模糊度,值越小表现越清晰
(注意一般等所有数据完全被输出显示成最终结果,形状才会圆满的哦!~!~)
4,我们再用letterCloud绘图,它可以根据设定的字符,生成一个与之形状相同的词云。
注意字符可以是英文字母如“R”,也可以是中文汉字哦!(理论上是可以输入好几个字的,比如“你好”,但我觉得没必要啦!)
(注意:程序运行之后,可能响应时间比较长,看起来无反应。过一会就会看到图片慢慢形成啦!~!~)
附加:
我们若要使用自己的数据,首先得对自己的数据进行前期的分词数频处理。
大家可以去这里看看详细内容,可以跟着操作配置!~!
点击打开链接