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输出PowerPoint(ppt)文件中全部文字信息的方法
Apr 28 Python
Linux下为不同版本python安装第三方库
Aug 31 Python
Python解析excel文件存入sqlite数据库的方法
Nov 15 Python
详解Python里使用正则表达式的ASCII模式
Nov 02 Python
Python多线程threading和multiprocessing模块实例解析
Jan 29 Python
Ubuntu下Python2与Python3的共存问题
Oct 31 Python
Python面向对象程序设计类的多态用法详解
Apr 12 Python
详解python 利用echarts画地图(热力图)(世界地图,省市地图,区县地图)
Aug 06 Python
Python timeit模块的使用实践
Jan 13 Python
Python实现ElGamal加密算法的示例代码
Jun 19 Python
基于python实现操作git过程代码解析
Jul 27 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
Jan 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
php 生成饼图 三维饼图
2009/09/28 PHP
php入门学习知识点五 关于php数组的几个基本操作
2011/07/14 PHP
php全排列递归算法代码
2012/10/09 PHP
浅析php过滤html字符串,防止SQL注入的方法
2013/07/02 PHP
显示youtube视频缩略图和Vimeo视频缩略图代码分享
2014/02/13 PHP
php操作XML、读取数据和写入数据的实现代码
2014/08/15 PHP
浅谈PHP中JSON数据操作
2015/07/01 PHP
php简单备份与还原MySql的方法
2016/05/09 PHP
Javascript操纵Cookie实现购物车程序
2006/11/23 Javascript
jquery星级插件、支持页面中多次使用
2012/03/25 Javascript
jQuery.query.js 取参数的两点问题分析
2012/08/06 Javascript
Seajs的学习笔记
2014/03/04 Javascript
js字符串日期yyyy-MM-dd转化为date示例代码
2014/03/06 Javascript
Javascript 绘制 sin 曲线过程附图
2014/08/21 Javascript
jQuery中[attribute]选择器用法实例
2014/12/31 Javascript
js实现Form栏显示全格式时间时钟效果代码
2015/08/19 Javascript
js+css实现select的美化效果
2016/03/24 Javascript
Angular+Bootstrap+Spring Boot实现分页功能实例代码
2017/07/21 Javascript
layui动态加载多表头的实例
2019/09/05 Javascript
[42:35]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS OpTic
2018/03/31 DOTA
Python中logging实例讲解
2019/01/17 Python
python使用tkinter库实现五子棋游戏
2019/06/18 Python
anaconda升级sklearn版本的实现方法
2021/02/22 Python
努比亚手机官网:nubia
2016/10/06 全球购物
南非最大的在线时尚商店:Zando
2019/07/21 全球购物
求职自荐信格式
2013/12/04 职场文书
分层教学实施方案
2014/03/19 职场文书
法人代表任命书范本
2014/06/05 职场文书
做一个有道德的人活动实施方案
2014/08/23 职场文书
党在我心中演讲稿
2014/09/02 职场文书
生产操作工岗位职责
2014/09/16 职场文书
2014年最新学校运动会广播稿
2014/09/17 职场文书
农村老人去世追悼词
2015/06/23 职场文书
《当代神农氏》教学反思
2016/02/23 职场文书
祝福语集锦:送给毕业同学祝福语
2019/11/21 职场文书
《王国之心》迎来了发售的20周年, 野村哲发布贺图
2022/04/11 其他游戏