这篇文章主要是教大家如何制作一个自定义个性化词云图,具体要求如下:
- 文本内容使用文件content.txt的内容。如下图所示:
- 字体任意选取。这里我选择的是极影毁片辉宋字体
- 指定词云形状为文件222.png。如下图所示:
设置文字颜色以背景图片色为参考。
指定“的”、“了”、“就”为词云排除词。
将制作好的词云保存为ciyun.png文件。
那么以上要求如何进行实现呢?接下来让我们用6步来搞定它!
第一步:安装相关库
import jieba
from wordcloud import WordCloud
from wordcloud import ImageColorGenerator
import matplotlib.pyplot as plt
import numpy as np
from PIL import Image # Image模块是在Python PIL图像处理常用的模块
第二步:图像轮廓设定
picture = Image.open("E:\数据可视化\文本可视化\\222.png") # 打开图片路径,形成轮廓
shape = np.array(picture) # 图像轮廓转换为数组
image_colors = ImageColorGenerator(shape) # 提取图片色彩
第三步:文本设定
with open("E:\数据可视化\文本可视化\content.txt", 'r', encoding='utf-8') as f:
text = f.read() # 设置输入为中文字符
cut_text = " ".join(jieba.cut(text)) # 使用jieba全模式进行中文分词
第四步:设置停用词
# 设置停用词
stop_words = ['的', '了', '就']
ciyun_words = ''
# 经过过滤后的词
for word in cut_text:
if word not in stop_words:
ciyun_words += word
第五步:词云图参数设定
cloud = WordCloud(
mask=shape, # 图片背景
font_path="E:\数据可视化\文本可视化\ziti.ttf",
background_color="white",
max_words=4000,
max_font_size=100
).generate(ciyun_words) # 选定的绘制词云图的文本
第六步:绘制与保存
plt.figure(figsize=[10, 10])
plt.imshow(cloud.recolor(color_func=image_colors))
plt.axis('off')
# cloud.to_file("ciyun.png")
plt.savefig('ciyun.png')
最终结果:
最终运行完的词云图就展现出来啦!是不是很简单呢!如果有问题欢迎大家留言,我们一起讨论!
版权归原作者 BLUE_GDRAGON 所有, 如有侵权,请联系我们删除。