概述
很多时候我们能看到一张图片,比如下面:
是不是有点酷炫, 知道是怎么实现的吗。其实比较简单,用python的词云库就可以实现。
词云:言简意赅就是一些类词组组成的集合。
让我们来看看看强大的python如何实现的吧
词云所依赖的库有:
jieba:用于分词
matplotlib:用于绘图,数据可视化
wordcloud:词云
PIL:图片处理
numpy:举证运算
sqlite3:数据库(这是可选的,主要是用于从数据库查找出词,组合形成集合)
import jieba # 分词
from matplotlib import pyplot as plt # 绘图,数据可视化
from wordcloud import WordCloud # 词云
from PIL import Image # 图片处理
import numpy as np # 矩阵运算
import sqlite3
# 准备词云所需的文字
conn = sqlite3.connect('movie.db')
print("打开数据库")
cur = conn.cursor()
sql = '''
select info from movie250
'''
data = cur.execute(sql) # 执行SQL语句
text = ""
for item in data:
text = text + item[0]
print(text)
# conn.commit() # 提交数据库操作
cur.close()
conn.close() # 关闭数据库连接
print("检索出数据")
# 分词
cut = jieba.cut(text)
# 打印出分词
content = ' '.join(cut)
# 选择一张底照
img = Image.open(r'.staticold.jpg')
img_array = np.array(img) # 将图片转换为数组
# wordCloud配置,生成遮罩,背景色,子图
wc = WordCloud(
background_color='white',
mask=img_array,
font_path='simkai.ttf' # 字体存放位置C:windowsFonts
)
wc.generate_from_text(content)
# 绘制图片了
fig = plt.figure(1)
plt.imshow(wc)
plt.axis('off') # 是否显示坐标轴
# plt.show() # 显示生成的词云图片
# 输出词云图片到磁盘,并设置分辨率
plt.savefig(r'.staticnew.jpg', dpi=100)
备注:生成的图片显示和保存不能同时存在,plt.show()和plt.savefig同时存在的话,显示的图片正常,但是保存的图片会是一张空白,这是因为显示时会创建一张空白底照,影响保存效果。所以如果要保存,就注释掉显示方法吧
看看效果吧:
这是底照
这是词云效果
最后
以上就是神勇爆米花为你收集整理的词云wordcloud在图片显示的全部内容,希望文章能够帮你解决词云wordcloud在图片显示所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复