首页 > 其他 > 详细

易烊千玺歌曲词云

时间:2018-12-27 02:09:06      阅读:211      评论:0      收藏:0      [点我收藏+]

今天尝试做了用wordcloud模块来生成词云,我找了一些易烊千玺唱过的歌来进行处理,先看一下效果图:

技术分享图片

 

首先要进行wordcloud的安装,作为一个新手这个安装我花了很长时间,直接pip安装会报错,

我的解决方法是访问下面的网址,根据你的电脑和py版本下载对应的whl文件

https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud

技术分享图片

下载完成后,把whl文件放在pip路径下,输入下面的代码,记住代码的whl文件名一定是适合你的文件名,然后

pip install wordcloud-1.5.0-cp35-cp35m-win_amd64.whl

运行成功后再用一样的方法安装下面的几个模块

技术分享图片

 

全部安装完毕后就可以开始敲代码了。
先要确认做成词云的文本,我是直接在网上找的易烊千玺唱过的歌。然后找一张想要的图片,让词云以图片为背景输出
代码如下:
#导入库
import matplotlib.pyplot as plt
from wordcloud import WordCloud,ImageColorGenerator
from scipy.misc import imread

进行中文编码时我之前用utf-8报错就改用gbk了,如果出现同样的问题可以尝试用gbk

默认背景图为长方形的,效果如下:

 1 #1.读入txt文本数据
 2 text = open(yang.txt,r,encoding=gbk).read()
 3 print(text)
 4 #读取背景图
 5 coloring = imread(易烊千玺.jpg)
 6 #生成词云图
 7 wc = WordCloud(
 8     #设置字体,不指定会出现乱码
 9     font_path=C:\Windows\Fonts\simkai.ttf,
10     #设置背景色
11     background_color = white,
12     #设置字体大小
13     max_font_size=50,
14     min_font_size=10,
15 ).generate(text)#把文本添加进去
16 #保存词云
17 wc.to_file(wordcloud.png)
18 #显示词云
19 plt.figure(yang)
20 #以图片的形式显示词云
21 plt.imshow(wc)
22 #关闭图像坐标系
23 plt.axis("off")
24 plt.show()

  技术分享图片

给词云加上背景图并按照背景颜色输出:

 1 #读入txt文本数据
 2 text = open(yang.txt,r,encoding=gbk).read()
 3 print(text)
 4 #读取背景图
 5 coloring = imread(易烊千玺.jpg)
 6 #生成词云图
 7 wc = WordCloud(
 8     #设置字体,不指定会出现乱码
 9     font_path=C:\Windows\Fonts\simkai.ttf,
10     #设置背景色
11     background_color = white,
12     #设置字体大小
13     max_font_size=50,
14     min_font_size=10,
15     mask =coloring#设置形状
16 ).generate(text)#把文本添加进去
17 image_colors = ImageColorGenerator(coloring)#引入图片的颜色
18 #保存词云
19 # wc.to_file(‘wordcloud.png‘)
20 new_wc = wc.recolor(color_func=image_colors)
21 new_wc.to_file(wordcloud2.png)#保存图片色
22 #显示词云
23 plt.figure(yang)
24 #以图片的形式显示词云
25 # plt.imshow(wc)
26 plt.imshow(new_wc)
27 #关闭图像坐标系
28 plt.axis("off")
29 plt.show()

  技术分享图片

 

上面是完整代码,有兴趣的可以尝试做一下~

易烊千玺歌曲词云

原文:https://www.cnblogs.com/Estate-47/p/10182692.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!