python绘制词云(jieba+wordcloud+matplotlib)

首先安装如下的第三方库:jieba、wordcloud、matplotlib

pip install jieba
pip install wordcloud
pip install matplotlib

如果你的使用的是anaconda3,那么只需要下载jieba和wordcloud即可,matplotlib以包含在anaconda3里面

创建一个有文本内容的文本文件(我创建的是.txt文件)

在这里插入图片描述

可以创建py文件了,导入想要绘制词云的文本文件:

#导入一个文本文件
text = open(r'E:\11.txt',encoding='gbk')
mylist = list(text)

然后进行遍历,连接,计算词频,设置词云样式:

#对mylist进行遍历,并将其做分词切割后做成列表
word_list = [''.join(jieba.cut(sentence)) for sentence in mylist]

#将word_list内的元素用空格连接起来,以便于计算词频
new_text = ''.join(word_list)

#设置词云的字体和背景颜色
wordcloud = WordCloud(font_path='simhei.ttf',background_color='black').generate(new_text)

最后附上效果图与代码:

在这里插入图片描述

import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt

#导入一个文本文件
text = open(r'E:\11.txt',encoding='gbk')
mylist = list(text)

#对mylist进行遍历,并将其做分词切割后做成列表
word_list = [''.join(jieba.cut(sentence)) for sentence in mylist]

#将word_list内的元素用空格连接起来,以便于计算词频
new_text = ''.join(word_list)

#设置词云的字体和背景颜色
wordcloud = WordCloud(font_path='simhei.ttf',background_color='black').generate(new_text)
plt.imshow(wordcloud)
plt.axis('off')
plt.show()

—————————————————————————————————————————————————

背景轮廓词云图:(根据上面的例子改编)

以这张图为背景:在这里插入图片描述
然后代码的话在上面代码的基础上添加几行即可:

#在最上方加上import imageio和from collections import Counter
import imageio
from collections import Counter
......
......
#根据词频生成词云
con_words = [x for x in jieba.cut(new_text) if len(x) >= 2]
fq = Counter(con_words).most_common()
fq = dict(fq)
#导入背景图片,注意路径
pac_mask = imageio.imread(r'e:\boy.png')
...
...

效果图:

在这里插入图片描述

完整代码:

import jieba
from wordcloud import WordCloud
import imageio
import matplotlib.pyplot as plt
from collections import Counter

#导入一个文本文件
content = open(r'e:\11.txt',encoding='gbk')
mylist = list(content)

#对mylist进行遍历,并将其做分词切割后做成列表
word_list = [''.join(jieba.cut(sentence)) for sentence in mylist]

#将word_list内的元素用空格连接起来,以便于计算词频
new_text = ''.join(word_list)

#根据词频生成词云
con_words = [x for x in jieba.cut(new_text) if len(x) >= 2]
fq = Counter(con_words).most_common()
fq = dict(fq)

#导入背景图片,注意路径
pac_mask = imageio.imread(r'e:\boy.png')

#设置词云的字体和背景颜色
wc = WordCloud(font_path='simhei.ttf',background_color='white',max_words=2000,mask=pac_mask).fit_words(fq)
plt.imshow(wc)
plt.axis('off')
plt.show()

#把词云图保存下来
wc.to_file('e:\\24.png')
  • 6
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值