每天都听说医生和冠状病毒抗战的感人事迹,有那么多的医生因为保护我们,献出了自己的生命。希望逝者安息,活者坚强,所有健在的医生和我国同胞万众一心,早日战胜病毒。静待春暖花开,万物复苏。
今天我就来做一个天使表白墙,送给正在前线艰苦奋战的白衣天使,他/她们是我们最可敬的同胞,期待疫情早日结束,他/她们能早日凯旋归来。
1.先上效果图
2. python代码分步骤讲解
2.1 设置加载文件的路径(可替换成自己存放文件的路径)
import os
os.chdir(r'D:\算法文件夹\新闻数据与任务\表白')
2.2 先设定分割文本用的停用词和函数
由于停用词较多,不适合放在文本中,有需要的同学可以扫一扫文章下方的二维码,公众号中回复stopwords即可获得资料。
import pandas as pd
stopwords = pd.read_csv("stopwords.txt",index_col=False, sep="\t",quoting=3,names=['stopword'],encoding='utf-8')
def drop_stopwords(contents,stopwords):
contents_clean = []
all_words = []
for line in contents:
line_clean = []
for word in line:
if word in stopwords:
continue
line_clean.append(word)
all_words.append(str(word))
contents_clean.append(line_clean)
return contents_clean,all_words
2.3 设定词云的形状
angel.png可替换成你想喜欢的任意图片,如果想要本文用的原始图片(公众号中回复angel)。
from PIL import Image
images = Image.open('angel.png')
graph = np.array(images)
2.4 把表白的词绘制到天使图片上并保存图片
下面是用jieba分词器把biaobai.txx(公众号中回复表白白衣天使)中的文章分成一个一个的词,并统计绘图到天使图片上。
text = open('biaobai.txt').read()
cut_text= jieba.cut(text,cut_all=False)
result= "/".join(cut_text)
wc = WordCloud(font_path="./data/simhei.ttf",background_color='black',max_font_size=200,mask=graph)
wc.generate(result)
image_color = ImageColorGenerator(graph)
wc.recolor(color_func=image_color)
wc.to_file("wordcloud.png")
2.5 也可以直接在python程序中显示该图片
plt.figure("词云图")
plt.imshow(wc)
plt.axis("off")
plt.show()
本文是本人使用WordCloud库后的一些想法,如有不当之处恳请指正。
你可能感兴趣: 用Python创建动态彩色二维码
你可能感兴趣: 用Python绘制皮卡丘
你可能感兴趣: 风控建模整体流程
-end-
长按(扫一扫)识别上方二维码回复相关内容即可获取文中资料
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)