序
HELLO,这里是百里,一个学习中的ABAPER, 今天咱不讲ABAP,喜迎新年,今天咱用祝福话,画一个兔子.祝福大家新的一年里,财源广进事事顺心.
作品思路
本作品主要使用的PYTHON语言,通过调用词云 wordcloud包,分词包jieba,图像展示包 PIL展示效果
功能,结合图像蒙版实现对应图片展示效果.
技术分析
数据准备,获取新年祝福话
文本准备
新年祝福话非常多,我找了百度的新年成语大全,手工抄录了一些到数据模板.用于jieba分词.将txt中读取的数据拆开成成语用于展示.
蒙版准备
兔年肯定要准备一只白白胖胖的兔子,注意需要找蒙版图片,而且最好不要有其他太多的杂项,蒙版中只有一个主目标最好. 上我们的大兔子.
字体包准备
因为需要调用 matplotlib.pyplot
所以我们需要配置对应文字字体包,我这里使用的是 SimHei.ttf
安装python 相关包
代码语言:javascript复制pip install wordcloud
pip install jieba
只需要安装这两个就可以,如果很慢可以使用豆瓣镜像 .
-i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com
代码画兔子
代码语言:javascript复制from wordcloud import WordCloud
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
import jieba
# 打开文件
text = open("aaa.txt", encoding="utf-8").read()
# 中文分词
text = ' '.join(jieba.cut(text))
print(text[:100])
# 生成对象
mask = np.array(Image.open("ccc.png")) # 使用蒙版图片
wc = WordCloud(mask=mask, font_path="SimHei.ttf", mode="RGBA", background_color=True).generate(text)
# 显示词云
plt.imshow(wc, interpolation="bilinear")
plt.axis("off")
plt.show()
#保存文件
wc.to_file("3.wordcloud3.png")
技术总结
代码其实不难,这样我们就实现了一只新年祝福话,画出的小兔子了. 思路主要是,先通过读取,TXT中的文件内容,通过jieba分词获取我们想得到的数据内容. 在读取的蒙版图片,我们主要要的是兔子的轮廓.生成词云后,我们将内容放到蒙版的轮廓中填充.最后再将生成的词云文件图片保存到本地.
结果
万事如意,心想事成,步步高升.一只由祝福话生成的兔子,这样生成了.有没有很栩栩如生.
百里鸡汤
新的一年祝大家阖家欢乐.多多赚钱.