打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
R语言如何画个性化词云图


  我之前写了一篇关于使用wordcloud包的文本可视化的博客,链接为 http://blog.csdn.net/wzgl__wh/article/details/51772740。

  Ian Fellows与2014-06-13公布了wordcloud包,之前我用wordcloud包写了一篇关于文本可视化的博客。这里就不再多说了。就在今年2016-07-25,Dawei Lang发布了wordcloud2,它是wordcloud的一个升级版。不信咱们就看看。我们可以用这个包画出个性化词云图。
  这个包里面包含了两个数据集,demoFreqC和demoFreq,前者是一些中文数据,后者是一些英文数据。这两个数据都包含了两个变量,一个是文本,另一个是文本的数量。大家可以使用str()函数来查看数据的详细信息。这个表主要有两个函数letterCloud和wordcloud2。


wordcloud2(data, size = 1, minSize = 0, gridSize =  0,    fontFamily = 'Segoe UI', fontWeight = 'bold',    color = 'random-dark', backgroundColor = "white",    minRotation = -pi/4, maxRotation = pi/4, shuffle = TRUE,    rotateRatio = 0.4, shape = 'circle', ellipticity = 0.65,    widgetsize = NULL, figPath = NULL, hoverFunction = NULL)

letterCloud(data, word, wordSize = 0, letterFont = NULL, ...)

  wordcloud2提供了基本的词云功能,letterCloud可以使用选定的词绘制词云,这个词可以是英文,也可以是中文。

    上面就是wordcloud2()函数,里面参数一大堆,但我们用的时候却有的时候永不了那么多。其中

data就是我们要处理的数据。

shape参数可以选择词云的形状,有上面代码可知它默认为圆形(circle),它还提供了其他一些参数,cardioid(心形)star(星形)diamond(钻石形),triangle-forward(三角形),triangle(三角形),这两个三角形就是倾斜方向不同而已,pentagon(五边形)

size参数为字体的大小,这个还是比较重要的,后面我们会谈到。

backgroundColor设置背景颜色,默认为白色,但有的时候黑色效果更好,颜色更能凸显出来。

至于其他参数大家可以通过帮助文档来了解。

首先,我们要加载wordcloud2这个包,然后就可以绘制词云了。

library(wordcloud2)

来画我们的第一个图吧!

wordcloud2(demoFreq)


这是一个最简单的。接下来让我们画一个五角星:

wordcloud2(demoFreq, size = 1,shape='star')



   如果你觉得这个包自带的参数画出来的图不够好看,或者不能表达你想表达的意思,你还可以自定义词云的背景形状。不过图片必须是黑白照片,在这个包的examples文件夹下面有一张t.png的黑白照片,是一只鸟。我们就可以画出一张像下面小鸟的词云。


  1. log<-system.file("examples/t.png",package="wordcloud2")  

  2. wordcloud2(demoFreqC, size = 1,figPath =log)


  也许看到下面图你会认为它怎么看都不像一只鸟,倒是有点像个心形。这就是因为size参数设置的有问题,我们把这个参数改一下再看看。

wordcloud2(demoFreqC, size = 1.55,figPath =log)


这下是不是有点像只鸟了。现在我们换一个背景颜色再看看效果。

wordcloud2(demoFreqC, size = 1.55,figPath =log,background='black')


 现在看起来是不是觉得颜色很鲜艳,特别吸引人的眼球。

现在我们再用letterCloud绘图,它可以根据设定的字符,生成一个与之形状相同的词云。

letterCloud(demoFreqC,word="R",size = 2)


咱们再来一个中文汉字吧。

letterCloud(demoFreqC,word="挖",size = 2)


怎么样,是不是既简单又好看,那就自己也动手做一个吧。



好东西是要懂得分享滴!



本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
R绘图笔记 | 词云图的绘制
R语言 | 制作词云图
WordCloud词云库快速入门(一)
推荐一个有趣的练手项目!
NLP之WordCloud:基于jieba+matplotlib库对一段文本生成词云图~~情人节最好的礼物(给你一张过去的词云图,看看那时我们的爱情)
Python生成词云的方法有哪些?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服