文件和数据格式化
wordcloud库的使用
wordcloud库的基本介绍
wordcloud库的概述
wordcloud是优秀的词云展示的第三方库
词云以词语为基本单位,更加直观和艺术的展示文本。
wordcloud库的安装
pip install wordcloud
wordcloud库的使用说明
wordcloud库的基本使用
wordcloud库把词云当作一个WordCloud对象
w = wordcloud.WordCloud()
- wordcloud.WordCloud()代表一个文本对应的词云
- 可以根据文本中词语出现的频率等参数绘制词云
- 词云的形状、尺寸和颜色都可以设定
wordcloud库的常规方法
- 以WordCloud对象为基础
- 配置参数、加载文本、输出文件
示例
- 步骤1:配置对象参数
- 步骤2:加载词云文本
- 步骤3:输出词云文件
import wordcloud
c = wordcloud.WordCloud()
c.generate("wordcloud by python")
c.to_file("pywordcloud.png")
从文本到图片,wordcloud做了哪些事情呢?
- 分隔:以空格分隔单词
- 统计:单词出现次数并过滤
- 字体:根据统计配置字号
- 布局:颜色环境尺寸
wordcloud配置对象参数
w = wordcloud.WordCloud(<参数>)
#指定词云形状,默认为长方形,需要引用imread()函数
from scipy.misc import imread
mk = imread("pic.png")
w = wordcloud.WordCloud(mask = mk)
wordcloud应用实例
示例一
import wordcloud
txt = "life is short, you need python"
w = wordcloud.WordCloud( \
background_color = "white")
w.generate(txt)
w.to_file("d:/pywordcloud.png")
示例二
import jieba
import wordcloud
txt = "程序设计语言是计算机能够理解和\
识别用户操作意图的一种交互体系,它按照\
特定规则组织计算机指令,使计算机能够自\
动进行各种运算处理。"
w = wordcloud.WordCloud( width = 1000, \
font_path = "msyh.ttc", height = 700)
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("d:/zhongwenciyun.jpg")
政府工作报告词云
问题分析
直观理解政策文件
- 需求:对于政府工作报告等政策文件,如何直观理解?
- 体会直观的价值:生成词云 & 优化词云
- 政府工作报告等文件 —> 有效展示的词云
基本思路
- 步骤1:读取文件,分词整理
- 步骤2:设置并输出词云
- 步骤3:观察结果,优化迭代
示例
示例一
#GovRptWordCloudv1.py
import jieba
import wordcloud
f = open("关于实施乡村振兴战略的意见.txt", "r", encoding="utf-8")
#f = open("新时代中国特色社会主义.txt","r",encoding="utf-8")
t = f.read()
f.close()
ls = jieba.lcut(t)
txt = "".join(ls)
w = wordcloud.WordCloud(font_path = "msyh.ttc", width = 1000, height = 700, background_color = "white",)
w.generate(txt)
w.to_file("grwordcloud.png")
示例二(增加参数max_words=15)
#GovRptWordCloudv2.py
import jieba
import wordcloud
f = open("关于实施乡村振兴战略的意见.txt", "r", encoding="utf-8")
#f = open("新时代中国特色社会主义.txt","r",encoding="utf-8")
t = f.read()
f.close()
ls = jieba.lcut(t)
txt = "".join(ls)
w = wordcloud.WordCloud(max_words = 15, font_path = "msyh.ttc", width = 1000, height = 700, background_color = "white")
w.generate(txt)
w.to_file("grwordcloud.png")
示例三(增加形状mask = mask)
#GovRptWordCloudv3.py
import jieba
import wordcloud
from scipy.misc import imread
mask = imread("fivestart.png")
f = open("关于实施乡村振兴战略的意见.txt", "r", encoding="utf-8")
#f = open("新时代中国特色社会主义.txt","r",encoding="utf-8")
t = f.read()
f.close()
ls = jieba.lcut(t)
txt = "".join(ls)
w = wordcloud.WordCloud(font_path = "msyh.ttc",mask = mask, width = 1000, height = 700, background_color = "white")
w.generate(txt)
w.to_file("grwordcloud.png")
举一反三
扩展能力
- 了解wordcloud更多参数,扩展词云能力
- 特色词云:设计一款属于自己的特色词云风格
- 更多文件:用更多文件练习词云生成
附件
链接: 关于实施乡村振兴战略的意见.txt
链接: 新时代中国特色社会主义.txt
链接: chinamap.jpg
链接: fivestars.png