利用Python生成简单的词云,须要的工具是cython,wordcloud与anaconda.python
包括安装cython,wordcloud与anaconda.浏览器
下载官网bash
选择对应的版本下载便可.工具
cython是为了安装wordcloud准备的.测试
pip -m pip install --upgrade cython
安装wordcloud前须要先安装Microsoft Visuall C++ 14.0.字体
这里下载编码
安装好了之后重启,输入excel
python -m easy_install wordcloud
打开Jupyter Notebook.code
而后会在浏览器打开这个页面,新建一个notebook.blog
先把须要的库导入:
from wordcloud import WordCloud import matplotlib.pyplot as plt
简单的文字库能够直接选择一个txt文件,复杂的话能够选择建立一个excel,导出为csv文件,而后利用pandas库的read_csv()读入文件.这里建立一个txt,空格分隔单词便可.
而后上传到Jupyter中:
首先读入文件:
text = open('1.txt').read()
而后使用WordCloud().generate(text),在里面设置各类属性.
wc=WordCloud( width=800, repeat=True, height=800).generate(text)
这里设置了高度与宽度,容许重复.
plt.imshow(wc,interpolation="bilinear") plt.axis("off") plt.show()
显示词云,
interpolation='bilinear'
会使显示平滑更加平滑,axis("off")表示不显示坐标轴.
下面是效果:
若是含有汉字,首先在读取时设置编码:
text = open('1.txt',encoding='utf-8')
而后再生成词云时设置字体:
wc = WordCloud(font_path=r'C:\Windows\Fonts\simfang.ttf')
测试:
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')