利用wordcloud生成云图

最近学习了Python的语法,写了个生成云图的小demo .

代码在Jupyter Notebook上运行 
安装执行python -m pip install –upgrade pip 
python -m pip install jupyter 

首先读取文本 
filename = "E:\codeStyle.txt"
with open(filename,encoding='utf-8') as f: 
    mytext = f.read()

通过jieba分词 
import jieba 
mytext = "".join(jieba.cut(mytext))

接下来就是用wordcloud生成云图了 

from wordcloud import WordCloud
import imageio
from os import path
#path.join(path.dirname(__file__),"timg.jpg")
trump_coloring = imageio.imread(path.join(path.abspath('.'),"E:\\timg.jpg"))
wordcloud = WordCloud(font_path="E:\\simsun.ttf",
                      margin=5,
                      width=1800,
                      height=800,
                      background_color="white", 
                      max_words=300, 
                      mask=trump_coloring,
                      max_font_size=40, 
                      random_state=42).generate(mytext)
import matplotlib.pyplot as plt
#%pylab inline  这行会报提示"Populating the interactive namespace from numpy and matplotlib"
plt.imshow(wordcloud, interpolation='bilinear')
wordcloud.to_file('E:\\output.png')
plt.axis("off")
plt.show()

这里面有几个坑 
1:必须是实际存在的.py文件,如果在命令行执行,则会引发异常NameError: name file is not defined;应该结合os.path.abspath()使用 
2:如果报类似”ImportError: No module named scipy.misc”这样的异常,就用pip安装对应的组件 
3.默认字体不支持中文,我们需要自己下载字体放到当前目录 

 

转载于:https://my.oschina.net/u/3779841/blog/2050234

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值