我是靠谱客的博主 神勇爆米花,最近开发中收集的这篇文章主要介绍词云wordcloud在图片显示,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

很多时候我们能看到一张图片,比如下面:

在这里插入图片描述
是不是有点酷炫, 知道是怎么实现的吗。其实比较简单,用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在图片显示所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部