python词云随笔

(一) 词云是什么?

词云:指突出中心的词组群,就是对文本中出现频率较高的“关键字(词)”,给予视觉上的突出显示,形成关键字词云,使浏览者一眼就可以掌握文本的大概信息。如下图:

在这里插入图片描述

(二) python形成词云

准备工作:
1.配置python环境
2.安装所需要的第三方库:wordcloud库,imageio库,jieba库,matplotlib库

2.1 英文文本词云

import wordcloud
from imageio import imread# 用于png模式的图片导入
mk=imread("心形形状.png")# 作为词云的形状,路径在当前源文件中时省略
f = open("C:\\Users\\lu\\Desktop\\哈姆雷特.txt")# 打开英文文本
t = f.read()
f.close()
w = wordcloud.WordCloud( \
    width = 1000, height = 700,\
    background_color = "white",
    font_path = "msyh.ttc",
    mask=mk,
    max_words=300 
    )# 建立词云对象
w.generate(t)# j将文本加入词云对象中
w.to_file("哈姆雷特词云.png")# 输出图片

在这里插入图片描述

2.2 中文文本词云

import jieba# 利用jieba库对中文文本进行分词
import wordcloud
from imageio import imread
mk=imread("心形形状.png")
f = open("C:\\Users\\lu\\Desktop\\全面建成小康社会.txt", "r", encoding="utf-8")# 打开中文文本,utf-8为文本编码格式
t = f.read()
f.close()
ls = jieba.lcut(t)# 对中文文本进行分词
txt = " ".join(ls)# 用空格分隔上面分好的词组列表
w = wordcloud.WordCloud( \
    width = 1000, height = 700,\
    background_color = "white",
    font_path = "msyh.ttc",
    mask=mk,
    max_words=1000 
    )
w.generate(txt)
w.to_file("全面建成小康社会词云词云.png")

在这里插入图片描述

3.3 注意事项

注意:

  1. 如果覆盖层图片为jpg格式,则用matplotlib库的matplotlib.pyplot.imread()函数导入
  2. 如果覆盖层图片为png格式,则用imageio库imageio.imread()函数导入
  3. 覆盖层图片的背景必须是白色,因为词云填充时是在非白色区域显示词云,从而形成词云的形状

代码如下:

import jieba# 利用jieba库对中文文本进行分词
import wordcloud
import matplotlib.pyplot as plt# jpg模式图片
mk=plt.imread("中国地图形状.jpg")
f = open("C:\\Users\\lu\\Desktop\\全面建成小康社会.txt", "r", encoding="utf-8")# 打开中文文本,utf-8为文本编码格式
t = f.read()
f.close()
ls = jieba.lcut(t)# 对中文文本进行分词
txt = " ".join(ls)# 用空格分隔上面分好的词组列表
w = wordcloud.WordCloud( \
    width = 1000, height = 700,\
    background_color = "white",
    font_path = "msyh.ttc",
    mask=mk,
    max_words=1000 
    )
w.generate(txt)
w.to_file("全面建成小康社会词云词云.jpg")

在这里插入图片描述

发布了59 篇原创文章 · 获赞 47 · 访问量 5510

猜你喜欢

转载自blog.csdn.net/qq_44755403/article/details/98945832