本文是对up主同济子豪兄制作视频的总结,学会制作词云。
1 预先准备
pip install numpy matplotlib pillow wordcloud imageio jieba snownlp itchat -i https://pypi.tuna.tsinghua.edu.cn/simple
将所需要的库安装好。
2 制作简单的词云
import wordcloud
import matplotlib.pyplot as plt
# 1.生成图片
w = wordcloud.WordCloud()
w.generate('and that government of the people, by the people, for the people, shall not perish from the earth.')
w.to_file('..\\..\\. .png')
# 2.用matplotlib展示
plt.imshow(w)
plt.axis('off')
plt.show()
效果图片如下所示:
2.1 美化词云
包括设置字体,宽,高,背景颜色等
w = wordcloud.WordCloud(height = 1000,
width = 700,
background_color = 'white',
font_path = 'msyh.ttc')
w.generate('从明天起,做一个幸福的人。喂马、劈柴,周游世界。从明天起,关心粮食和蔬菜。我有一所房子,面朝大海,春暖花开')
plt.imshow(w)
plt.axis('off')
plt.show()
常用的参数:
参见这篇博客
2.2 利用jieba模块
该模块用于将长句子拆解为不同的词语。
import jieba
textlist = jieba.lcut('山东建筑大学位于山东省济南市是一所以工为主以土木建筑学科为特色工理管文法农艺多学科交叉渗透协调发展的多科性大学')
textlist
string = " ".join(textlist)
string
w = wordcloud.WordCloud(height = 1000,
width = 700,
background_color = 'white',
font_path = 'msyh.ttc')
w.generate(string)
plt.imshow(w)
plt.axis('off')
plt.show()
2.3 绘制指定形状的词云
首先需要读入形状的图片,用到imageio 库
import imageio
mk = imageio.imread("picture.png")
w = wordcloud.WordCloud(mask=mk)