wordcloud词云 |
您所在的位置:网站首页 › python用wordcloud词云颜色 › wordcloud词云 |
一:Abstract
使用Python制作词云,需要wordcloud,PIL,numpy,matplotlib库。如果要制作中文词云,还需要jieba库。本篇blog介绍wordcloud库和英文词云,中文词云的制作。代码在github上 二: WordCloudwordcloud库把词云当作一个WordCloud对象,制作词云并保存都需要WordCloud对象。我个人觉得需要设置的属性为:font_path,mask,background_color w = wordcloud.WordCloud() width 宽度 height 高度 min_font_size 词云中字体最小字号 max_font_size 词云中字体最大字号 font_step 字体字号的步进间隔 font_path 字体文件路径 max_words 显示单词最大数量 stop_words 指定词云不显示了列表 mask 词云形状(后面介绍设置方法) background_color 词云颜色 stopword 设置需要屏蔽的词,如果为空,则使用内置的STOPWORDS 其实是个set repeat : bool, default=False 单词是否能重复直到满足max_word(显示单词最大数量) 三 生成词云函数因为英文按照单词间的空格就可以分词,所以可以直接根据文本分词。但中文不行,所以要使用 jieba库先分词。所以我推荐英文词云使用w.generate函数,中文词云先用jieba分词,再构造单词频率字典,使用w.generate_from_frequencies函数。 # 根据text生成词云 w.generate(text)根据频率生成词云 #frequencies是一个字典 {'word':出现次数} w.generate_from_frequencies(frequencies) 四:设置maskmask需要一个ndarray对象 import numpy as np from PIL import Image pic = np.array(Image.open('path')) 五:改变词云每个单词颜色下面是根据图片颜色分布改变单词颜色 # 按图片的颜色分布 from wordcloud import ImageColorGenerator img = np.array(Image.open('path')) # create coloring from image img_color = ImageColorGenerator(img) #recolor wordcloud w.recolor(color_func=img_color)定制颜色(来自官网的例子) //灰色 def grey_color_func(word, font_size, position, orientation, random_state= |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |