词云图

       上次在网上看到别人制作的词云图,感觉很有意思,就在网上搜了一下教程,自己动手尝试了一下,下面简单说一下步骤:

目的:制作词云图

步骤:

1)利用python爬虫把要制作的信息抓取下来

2)有的时候可能会用到分词。这里使用的是python里边的jieba模块,对抓取的内容进行分词。

3)由以上2步得到的信息来制作词云图,这里工具用的是TAGUL。

      下面以抓取微信好友的个性签名为例,制作词云图。

一、爬取微信好友个性签名

import itchat
import jieba
import re


itchat.auto_login(True)
friends = itchat.get_friends(update=True)[0:]
listOfFriends = []
for friend in friends:
    listOfFriends.append(friend["Signature"])

class Tool:  #把是数字的签名删除
    removeNumber = re.compile("[0-9]")
    removeAddr = re.compile('<span class=".*?"></span>.*?<span class=".*?"></span>') 
    def replace(self,x):
        x = re.sub(self.removeNumber,"",x)
        x = re.sub(self.removeAddr,"",x)
        return x.strip() 
for i in range(len(listOfFriends)):
    tool = Tool()
    listOfFriends[i] = tool.replace(listOfFriends[i])
    print listOfFriends[i] 

我的本意是把签名保存下来,生成一个txt文件,但是试了几次都没成功,python2.7里边的中文编码真是令我很头疼,也在网上查了很多方法,但有的方法在这个程序里边好用,到了别的程序里边就不好使了(比如上次写的爬取百度贴吧的帖子),我也搞不懂为什么???

二、用jieba进行分词

for item in listOfFriends:
    seg_list = jieba.cut(item)
    print "\n".join(seg_list)

三、制作词云图

工具:TAGUL 这是一款在线词云图制作工具,非常方便。下面说一下制作过程中需要注意的问题

1)点击word页面,点击import words,添加要制作的文本,文本数据包括关键词和size(频率),size越大,则生成的字就会越大。Add是人为追加关键词和size。

2)shapes,选择形状。这里是一些模板图形,左边是分类主题。你如果想添加图片作为模板的话,点击左上角的ADD IMAGE,就可以把电脑里的图片添加进去。

3)Fonts是字体模块。TAGUL提供的字体都是英文模式,如果要添加中文字体,点击上方的Add font,把C:\Windows\Fonts里边的字体添加一些进去就可(我的电脑添加不进去Fonts里边的字体,所以我只要把里边的一些字体复制出来,再添加进TAGUL中)

4)Layout 选择文字排列方向

      最后,点击右边的Visualize就能生成词云图了,这时点击左边框的Download and Share,选择Download PNG image里的PNG图片,就能把生成的词云图保存成PNG格式了。

这是未进行分词的词云图


这是进行分词后的词云图


这是京东上一款电子商品评论人群的分类:


间书首页文章标题


好了,是不是很有趣,自己试一下吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值