Python学习之jieba、wordcloud
来源:互联网 发布:网络定向监控商品信息 编辑:程序博客网 时间:2024/06/08 05:50
在上一篇的博客中,获取到了大量的淘宝MM的数据,这里我们使用这些数据来生成一个类似如下的图片
在这里我们要用到结巴分词、词云WordCloud和会图库matplotlib。直接上代码
# coding:utf-8from os import pathfrom scipy.misc import imreadimport matplotlib.pyplot as pltimport jiebafrom wordcloud import WordCloud, STOPWORDS, ImageColorGeneratorstopwords = {}def importStopword(filename=''): global stopwords f = open(filename, 'r', encoding='utf-8') line = f.readline().rstrip() while line: stopwords.setdefault(line, 0) stopwords[line] = 1 line = f.readline().rstrip() f.close()def processChinese(textContent): jieba.enable_parallel(4) seg_generator = jieba.cut(textContent) # 使用结巴分词,也可以不使用 seg_list = [i for i in seg_generator if i not in stopwords] seg_list = [i for i in seg_list if i != u' '] seg_list = r' '.join(seg_list) return seg_listimportStopword(filename='./stopwords1.txt')# 获取当前文件路径# __file__ 为当前文件, 在ide中运行此行会报错,可改为# d = path.dirname('.')d = path.dirname(__file__)text = open(path.join(d, 'data.txt'), encoding='utf-8').read()# 如果是中文text = processChinese(text) # 中文不好分词,使用Jieba分词进行# 设置背景图片back_coloring = imread(path.join(d, "./image/nv.png"))wc = WordCloud(font_path='./font/叶立群几何体.ttf', # 设置字体 background_color="white", # 背景颜色 max_words=2000, # 词云显示的最大词数 mask=back_coloring, # 设置背景图片 # max_font_size=100, #字体最大值 random_state=42, )# 生成词云, 可以用generate输入全部文本(中文不好分词),也可以我们计算好词频后使用generate_from_frequencies函数wc.generate(text)# wc.generate_from_frequencies(txt_freq)# txt_freq例子为[('词a', 100),('词b', 90),('词c', 80)]# 从背景图片生成颜色值image_colors = ImageColorGenerator(back_coloring)# 绘制词云plt.figure()# 以下代码显示图片plt.imshow(wc)plt.axis("off")plt.show()# 保存图片wc.to_file(path.join(d, "名称.png"))
nameorderageplacebirthdaystylesizeplacefansflowactiveprofessionblood_typeschool 公历bloodtypename
背景图使用如下的:(要使用边界分明的图片,不然容易生成方形的图片)
程序生成如下的图片
如果对比收集到的数据,这个图是能说明一些问题的,比如我们的数据里有MM的地址、血型、职业、风格等等的一些信息,图片中放大显示的就是我们的数据里占比比较大的数据。
0 0
- Python学习之jieba、wordcloud
- Python-QQ聊天记录分析-jieba+wordcloud
- Python中文分词_使用介绍(wordcloud+jieba)
- R语言文本挖掘之jieba分词与wordcloud展现
- 裂墙干货之jieba,wordcloud,nltk下载及安装
- python jieba分词学习
- python运用jieba和wordcloud库简单实现对QQ聊天记录制作词云
- Python实现微信好友签名词云的构建(itchat、jieba、wordcloud)
- python 结巴分词(jieba)学习
- python 结巴分词(jieba)学习
- python 结巴分词(jieba)学习
- python 结巴分词(jieba)学习
- python 结巴分词(jieba)学习
- python 结巴分词(jieba)学习
- python 结巴分词(jieba)学习
- python 结巴分词(jieba)学习
- 中文分词jieba python 学习
- python 结巴分词(jieba)学习
- vim替换剪切
- buildEclipse
- 用两个栈实现队列
- 如何删除MySql服务
- 萌新SQL基础学习1---续
- Python学习之jieba、wordcloud
- 数字全排列生成算法
- Struts 2中的constant配置详解
- struts2入门及示例
- 每日F&Q(2017.2.22)
- php缓存优化
- oj2007: C语言实验——求一个3*3矩阵对角线元素之和
- hive-1.1.0-cdh5.6.0手册(一)
- The JDBC Driver has been forcibly unregistered