脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python生成词云的实现代码

Python生成词云的实现代码

2020-04-24 10:35Blue Python

这篇文章主要介绍了Python生成词云,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1 概述

利用Python生成简单的词云,需要的工具是cython,wordcloud与anaconda.

2 准备工作

包括安装cython,wordcloud与anaconda.

2.1 安装anaconda

下载官网

Python生成词云的实现代码

选择对应的版本下载即可.

2.2 安装cython

cython是为了安装wordcloud准备的.

?
1
pip -m pip install --upgrade cython

Python生成词云的实现代码

2.3 安装wordcloud

安装wordcloud前需要先安装Microsoft Visuall C++ 14.0.

安装好了以后重启,输入

?
1
python -m easy_install wordcloud

Python生成词云的实现代码

3 使用

3.1 打开Jupyter

打开Jupyter Notebook.

Python生成词云的实现代码

然后会在浏览器打开这个页面,新建一个notebook.

Python生成词云的实现代码

先把需要的库导入:

?
1
2
from wordcloud import WordCloud
import matplotlib.pyplot as plt

Python生成词云的实现代码

3.2 创建文字库

简单的文字库可以直接选择一个txt文件,复杂的话可以选择创建一个excel,导出为csv文件,然后利用pandas库的read_csv()读入文件.这里创建一个txt,空格分隔单词即可.

Python生成词云的实现代码

然后上传到Jupyter中:

Python生成词云的实现代码

3.3 生成词云

首先读入文件:

?
1
text = open('1.txt').read()

然后使用WordCloud().generate(text),在里面设置各种属性.

?
1
2
3
4
wc=WordCloud(
  width=800,
  repeat=True,
  height=800).generate(text)

这里设置了高度与宽度,允许重复.

?
1
2
3
plt.imshow(wc,interpolation="bilinear")
plt.axis("off")
plt.show()

显示词云,

?
1
interpolation='bilinear'

会使显示平滑更加平滑,axis("off")表示不显示坐标轴.
下面是效果:

Python生成词云的实现代码

3.4 注意事项

如果含有汉字,首先在读取时设置编码:

?
1
text = open('1.txt',encoding='utf-8')

然后再生成词云时设置字体:

?
1
wc = WordCloud(font_path=r'C:\Windows\Fonts\simfang.ttf')

测试:

Python生成词云的实现代码

?
1
2
3
4
5
6
7
8
9
text=open('1.txt',encoding='utf-8').read()
wc=WordCloud(
  width=1300,
  repeat=True,
  font_path=r'C:\Windows\Fonts\simfang.ttf',
  height=1300).generate(text)
plt.imshow(wc,interpolation="bilinear")
plt.axis("off")
plt.savefig('aaaa.jpg')

Python生成词云的实现代码

Python生成词云的实现代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://segmentfault.com/a/1190000021574005

延伸 · 阅读

精彩推荐