时间:2022-08-08 08:22:08 | 栏目:Python代码 | 点击:次
在用Python绘制红楼梦词云图文章中讲到我们使用Python把红楼梦中的核心词汇给绘画出来了,但是,红楼梦这么唯美的书,给我们乌漆麻黑的搞了一张词云,宝宝们肯定接受不了
那怎么办呢?能否用贾宝玉的图像来画词云图呢?答案是肯定的。
我们先来找一张贾宝玉的照片,这张照片不错,不过还是要处理一下,把背景处理称为白色,这个时候,PS工具可以简单地达到这个效果。
接着,我们就要来写程序了,老规矩,我们先来导入包:
from scipy.misc import imread import matplotlib.pyplot as plt from wordcloud import WordCloud, ImageColorGenerator
把图片读取进去,然后重新设置一下WordCloud对象,设置mask为我们的图片。
bimg = imread(“D:\贾宝玉.png”) wordcloud = WordCloud( background_color=“white”, mask=bimg, font_path=‘D:\simhei.ttf')
接着,我们就可以美美地绘制词云了。
wordcloud = wordcloud.fit_words(segStat.head(1000).itertuples(index=False)) bimgColors = ImageColorGenerator(bimg) plt.axis(“off”) plt.imshow(wordcloud.recolor(color_func=bimgColors)) plt.show()
长腿欧巴虽然好,但是画起来,很明显我们的词汇分成两大部分了,这样子会分散我们的注意力,因此,我们使用人物作为背景绘制词云的时候,最好只是使用上半身,使用头像就更好了。
因此,长腿欧巴拜拜。
bimg = imread(“D:\贾宝玉2.png”) wordcloud = WordCloud(background_color=“white”,mask=bimg, font_path=‘D:\simhei.ttf') wordcloud = wordcloud.fit_words(segStat.head(1000).itertuples(index=False)) bimgColors = ImageColorGenerator(bimg) plt.axis(“off”) plt.imshow(wordcloud.recolor(color_func=bimgColors)) plt.show()
这样子画出来的词云,是不是就唯美了很多了呢?希望你们喜欢。