Python制作词云图代码实例

yipeiwu_com5年前Python基础

词云图是将词汇按照频率的高低显示不同大小而形成的图,可以一目了然地看出关键词。下面是词云图的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("<br/>")

#创建词云对象
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')

下面这张图是我爬了阿里巴巴招聘网站上所有数据分析职位需求,生成的词云图,大家可以看看阿里对数据分析师的要求~

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅析Python装饰器以及装饰器模式

漫谈 如果作为一个Python入门,不了解Python装饰器也没什么,但是如果作为一个中级Python开发人员,如果再不对python装饰器熟稔于心的话,那么可能并没有量变积累到质变。...

python 的 scapy库,实现网卡收发包的例子

问题: 测试时 收发流采用TestCenter、SmartBit等仪表来进行。如果仍采用其进行自动化冒烟,则会带来效率低、成本高的问题。 解决方案: 采用网卡来收发流,虽然有性能统计上的...

windows 下python+numpy安装实用教程

如题,今天兜兜转转找了很多网站帖子,一个个环节击破,最后装好费了不少时间。 希望这个帖子能帮助有需要的人,教你一篇帖子搞定python+numpy,节约科研时间。 水平有限,难免存在不足...

Python定时任务sched模块用法示例

本文实例讲述了Python定时任务sched模块用法。分享给大家供大家参考,具体如下: 通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数。 范例一 imp...

Python实现找出数组中第2大数字的方法示例

本文实例讲述了Python实现找出数组中第2大数字的方法。分享给大家供大家参考,具体如下: 题目比较简单直接看实现即可,具体的注释在代码中都有: #!usr/bin/env pyth...