词云一直对非数据从业人员来说是一个高大上的数据展现方法,之前一直在用R做词云,近期开始舍弃R应用Python做数据分析,当然做数据展现的时候词云也是一项必不可少的一种图。其实词云应该是比较成熟的了,有一些成熟的网站可以直接做词云,比如:Free online word cloud generator and tag cloud creator 。用户可以直接上传文本画词云。尽管已经有成熟的网站还是不如用户Python来的灵活自有,话不多说,直接上程序。
import matplotlib.pyplot as plt
from wordcloud import WordCloud,STOPWORDS
from os import path
from PIL import Image
import numpy as np
import os
# 修改路径为文本所在的路径
os.chdir("D:PythonSina词云")
print('当前路径为:',os.getcwd())
## 1-英文词云
# 读取文本
text1 = open('eg.txt',encoding='ANSI').read()
# 建立wordcloud
wd = WordCloud().generate(text1)
# 展示词云
plt.imshow(wd, interpolation='bilinear',)
plt.axis("off")
plt.show()
## 中文词云
# 读取文本
text2 = open('黄金时代.txt',encoding='ANSI').read()
# 建立wordcloud 注意中文词云需要指定字体的路径,否则会乱码
wd2 = WordCloud(font_path='C:WindowsFontssimkai.ttf').generate(text2)
# 展示词云
plt.imshow(wd2, interpolation='bilinear')
plt.axis("off")
plt.show()
最终的效果如下图1和图2所示:
![20709ac534d2ba4ab74384d47f15ffdf.png](https://i-blog.csdnimg.cn/blog_migrate/4b40d6483be1b011a393d2943a01968c.jpeg)
![7bd7a3c1aa8914a64f92d338e37a5174.png](https://i-blog.csdnimg.cn/blog_migrate/d28a1e22a4cfa3bfbc27e3b1451a75f0.jpeg)