词云图是将词汇按照频率的高低显示不同大小而形成的图,可以一目了然地看出关键词。下面是词云图的python代码~
#导入需要模块 import jieba import numpy as np import matplotlib.pyplot as plt from PIL import Image from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator text_road=str(input('请输入文章的路径:')) picture_road=str(input('请输入图片的路径:')) #加载需要分析的文章 text = open(text_road,'r',encoding='utf-8').read() #对文章进行分词 wordlist_after_jieba = jieba.cut(text, cut_all=False) wl_space_split = " ".join(wordlist_after_jieba) #读取照片通过numpy.array函数将照片等结构数据转化为np-array mask=np.array(Image.open(picture_road)) #选择屏蔽词,不显示在词云里面 stopwords = set(STOPWORDS) #可以加多个屏蔽词 stopwords.add("
") #创建词云对象 wc = WordCloud( background_color="white", font_path='/Library/Fonts/Arial Unicode.ttf', max_words=1000, # 最多显示词数 mask=mask, stopwords=stopwords, max_font_size=100 # 字体最大值 ) #生成词云 wc.generate(text) #从背景图建立颜色方案 image_colors =ImageColorGenerator(mask) #将词云颜色设置为背景图方案 wc.recolor(color_func=image_colors) #显示词云 plt.imshow(wc,interpolation='bilinear') #关闭坐标轴 plt.axis("off") #显示图像 plt.show() #保存词云 wc.to_file('词云图.png')
下面这张图是我爬了阿里巴巴招聘网站上所有数据分析职位需求,生成的词云图,大家可以看看阿里对数据分析师的要求~
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。