python生成词云的实现方法(推荐)


Posted in Python onJune 13, 2017

期末复习比较忙过段时间来专门写scrapy框架使用,今天介绍如何用python生成词云,虽然网上有很多词云生成工具,不过自己用python来写是不是更有成就感。

今天要生成的是励志歌曲的词云,百度文库里面找了20来首,如《倔强》,海阔天空是,什么的大家熟悉的。

所要用到的python库有 jieba(一个中文分词库)、wordcould 、matplotlib、PIL、numpy。

首先我们要做的是读取歌词。我将歌词存在了文件目录下励志歌曲文本中。

现在来读取他

#encoding=gbk
lyric= ''
f=open('./励志歌曲歌词.txt','r')
for i in f:
  lyric+=f.read()

加入#encoding=gbk是为了防止后面操作报错SyntaxError: Non-UTF-8 code starting with '\xc0'

然后我们用jieba分词来对歌曲做分词提取出词频高的词

import jieba.analyse
result=jieba.analyse.textrank(lyric,topK=50,withWeight=True)
keywords = dict()
for i in result:
  keywords[i[0]]=i[1]
print(keywords)

得到结果:

python生成词云的实现方法(推荐)

然后我们就可以通过wrodcloud等库来生成词云了

首先先自己找一张图片来作为生成词云的形状的图

python生成词云的实现方法(推荐)

from PIL import Image,ImageSequence
import numpy as np
import matplotlib.pyplot as plt
from wordcloud import WordCloud,ImageColorGenerator
image= Image.open('./tim.jpg')
graph = np.array(image)
wc = WordCloud(font_path='./fonts/simhei.ttf',background_color='White',max_words=50,mask=graph)
wc.generate_from_frequencies(keywords)
image_color = ImageColorGenerator(graph)
plt.imshow(wc)
plt.imshow(wc.recolor(color_func=image_color))
plt.axis("off")
plt.show()

python生成词云的实现方法(推荐)

保存生成图片

wc.to_file('dream.png')

完整代码:

#encoding=gbk
import jieba.analyse
from PIL import Image,ImageSequence
import numpy as np
import matplotlib.pyplot as plt
from wordcloud import WordCloud,ImageColorGenerator
lyric= ''
f=open('./励志歌曲歌词.txt','r')
for i in f:
  lyric+=f.read()


result=jieba.analyse.textrank(lyric,topK=50,withWeight=True)
keywords = dict()
for i in result:
  keywords[i[0]]=i[1]
print(keywords)


image= Image.open('./tim.jpg')
graph = np.array(image)
wc = WordCloud(font_path='./fonts/simhei.ttf',background_color='White',max_words=50,mask=graph)
wc.generate_from_frequencies(keywords)
image_color = ImageColorGenerator(graph)
plt.imshow(wc)
plt.imshow(wc.recolor(color_func=image_color))
plt.axis("off")
plt.show()
wc.to_file('dream.png')

以上这篇python生成词云的实现方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python入门之语句(if语句、while语句、for语句)
Jan 19 Python
python实现定时同步本机与北京时间的方法
Mar 24 Python
简单介绍Python中的floor()方法
May 15 Python
Python3中类、模块、错误与异常、文件的简易教程
Nov 20 Python
Python模拟脉冲星伪信号频率实例代码
Jan 03 Python
对Python3.6 IDLE常用快捷键介绍
Jul 16 Python
Python3 关于pycharm自动导入包快捷设置的方法
Jan 16 Python
使用python 的matplotlib 画轨道实例
Jan 19 Python
python3用urllib抓取贴吧邮箱和QQ实例
Mar 10 Python
使用tensorflow进行音乐类型的分类
Aug 14 Python
Prometheus开发中间件Exporter过程详解
Nov 30 Python
python自动化操作之动态验证码、滑动验证码的降噪和识别
Aug 30 Python
Python实现Linux中的du命令
Jun 12 #Python
python正则表达式的使用
Jun 12 #Python
Python简单删除列表中相同元素的方法示例
Jun 12 #Python
Python实现删除列表中满足一定条件的元素示例
Jun 12 #Python
Ubuntu 下 vim 搭建python 环境 配置
Jun 12 #Python
Django objects.all()、objects.get()与objects.filter()之间的区别介绍
Jun 12 #Python
详谈python http长连接客户端
Jun 12 #Python
You might like
2019十大人气国漫
2020/03/13 国漫
PHP 数据结构 算法 三元组 Triplet
2011/07/02 PHP
基于php权限分配的实现代码
2013/04/28 PHP
解析php中memcache的应用
2013/06/18 PHP
关于php内存不够用的快速解决方法
2013/10/26 PHP
析构函数与php的垃圾回收机制详解
2013/10/28 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(四)
2014/06/23 PHP
IE autocomplete internet explorer's autocomplete
2007/06/30 Javascript
Jquery实现的角色左右选择特效
2014/05/21 Javascript
Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法
2014/09/01 Javascript
浅谈页面装载js及性能分析方法
2014/12/09 Javascript
谈谈我对JavaScript DOM事件的理解
2015/12/18 Javascript
javascript数组去重小结
2016/03/07 Javascript
jQuery插件Echarts实现的渐变色柱状图
2017/03/23 jQuery
在Vue项目中取消ESLint代码检测的步骤讲解
2019/01/27 Javascript
js继承的这6种方式!(上)
2019/04/23 Javascript
详解vuex之store源码简单解析
2019/06/13 Javascript
jquery实现弹窗(系统提示框)效果
2019/12/10 jQuery
关于AngularJS中几种Providers的区别总结
2020/05/17 Javascript
jQuery 移除事件的方法
2020/06/20 jQuery
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
[02:29]大剑、皮鞭、女装,这届DOTA2勇士令状里都有
2020/07/17 DOTA
python实现图片彩色转化为素描
2019/01/15 Python
使用Python开发个京东上抢口罩的小实例(仅作技术研究学习使用)
2020/03/10 Python
美的官方商城:Midea
2016/09/14 全球购物
Superdry极度干燥美国官网:英国制造的服装品牌
2018/11/13 全球购物
cf收人广告词
2014/03/14 职场文书
校长寄语大全
2014/04/09 职场文书
《学棋》教后反思
2014/04/14 职场文书
土木工程求职信
2014/05/29 职场文书
个人租房协议书样本
2014/10/01 职场文书
海上钢琴师观后感
2015/06/03 职场文书
歌咏比赛主持词
2015/06/29 职场文书
离婚协议书格式范本
2016/03/18 职场文书
员工工作失职检讨书范文!
2019/07/03 职场文书
【2·13】一图读懂中国无线电发展
2022/02/18 无线电