基于python的词云生成(一)
1.背景
前段时间网络中出现很多关于很多文字组成的图片,生成的图片看起来还是挺有意思,这里使用python做出词云图片。其中需要解释的是:词云又叫文字云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思。;
2.本博客主要目标
本篇博客主要介绍python在win10系统下wordcloud的安装配置,以及英文文本下的云图的做法,中文文本云图做法以及根据改变词云形状的做法请参见下篇博文。
3.环境搭建
3.1.基本环境
本文默认读者已经安装好如下包:matplotlib、numpy、PIL等库文件。使用的IDE可根据读者的喜好去用,此篇文章中,作者使用的是Anaconda下的spyder,Anaconda的安装与使用可以参见本博客作者的另一篇,Anaconda的安装与基本使用的教程(https://blog.csdn.net/meiqi0538/article/details/79537357),这里不在赘述。
github:https://github.com/amueller/word_cloud ;
官方地址:https://amueller.github.io/word_cloud/
3.2.wordcloud包的安装
安装whl文件:移步于此:https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud,点击下载与自己python环境版本相同的文件;安装方式:进入命令行模式,具体下图:
安装wordcloud包:如下图:
4.代码分析
#导入词云的包
from wordcloud import WordCloud
#导入matplotlib作图的包
import matplotlib.pyplot as plt
#读取文件,返回一个字符串,使用utf-8编码方式读取,该文档位于此python同以及目录下
f = open(u'NINETEEN EIGHTY-FOUR.txt','r',encoding='utf-8').read()
#生成一个词云对象
wordcloud = WordCloud(
background_color="white", #设置背景为白色,默认为黑色
width=1500, #设置图片的宽度
height=960, #设置图片的高度
margin=10 #设置图片的边缘
).generate(f)
# 绘制图片
plt.imshow(wordcloud)
# 消除坐标轴
plt.axis("off")
# 展示图片
plt.show()
# 保存图片
wordcloud.to_file('my_test2.png')
测试文档获取:链接:https://pan.baidu.com/s/1e7tgbTk7LilxowbS7PC0tA 密码:3h8k
测试结果:如下图:
保存的图片如下图:
5.总结
本篇博客数据基本的入门案例,下篇将对于词云做进一步的优化。读者可以根据:https://amueller.github.io/word_cloud/generated/wordcloud.WordCloud.html查看wordcloud中各种参数,并对此进行修改。对于中文的词云生成可以查看博客基于python的词云生成(二)