初窥wordcloud之老司机带你定制词云图片
Posted yushangcc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初窥wordcloud之老司机带你定制词云图片相关的知识,希望对你有一定的参考价值。
抓紧上车啦
#-*-coding:utf-8 -*- from os import path from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator #用来画词云的。 import matplotlib.pyplot as plt #用来解析特殊的图片模板,numpy也可以的。 from scipy.misc import imread #第一步读你要制作成词云的源文件,少年记得用‘r’去读,手抖用了次‘w+’结果文件让我清空了。。。 dir=r\'C:\\Users\\cchen\\Desktop\\MPLS_2.txt\' text=open(dir,\'r\').read() #用导入的scipy的imread去解析模板文件,图片越大解析越慢 alice_coloring = imread(r\'C:\\Users\\cchen\\Desktop\\cloud.jpg\') #print alice_coloring 所料不错,是个挺大的矩阵。大到卡住了 #生成词云,这里可以用到很多的参数 #background_color顾名思义,是背景的颜色 #max_words 词云显示的最大词数 #mask 主角,我们的个人定制的模板 #max_font_size 字体的最大值 #stopwords 去除一些常用词汇,比如a,is,the之类的,你可以用add加上你不想显示的词。 #font_path=\'./font/cabin-sketch.bold.ttf设置字体 wc = WordCloud(background_color="white", max_words=600, mask=alice_coloring,max_font_size=200, random_state=42,stopwords=STOPWORDS.add("said")) wc.generate(text) #show出来定制化的词云,颜色是随机的五颜六色,第一个图就是啦 plt.figure() plt.imshow(wc) plt.axis("off") # 我这么低调的人肯定要用原图的黑色啊 # 可以用color_func=image_colors来重新画 # 根据模板获取颜色 image_colors = ImageColorGenerator(alice_coloring) #获取到的颜色模板,并用该模板来重画词云 plt.imshow(wc.recolor(color_func=image_colors)) plt.axis("off") #来看下我们的模板 plt.figure() plt.imshow(alice_coloring, cmap=plt.cm.gray) plt.axis("off") plt.show()
来看看依照原图来的模板
我们的模板
是不是很炫酷。
因为python2.7的蛋疼的中文编码问题。如果是中文文档的话,可以用jieba分词对文件进行次频处理在生成词云。
挖个坑,以后填。。
以上是关于初窥wordcloud之老司机带你定制词云图片的主要内容,如果未能解决你的问题,请参考以下文章
[python] 词云:wordcloud包的安装使用原理(源码分析)中文词云生成代码重写