基于Python实现词云制作

1 第三方库的安装与简介

1.1 Python第三方库 jieba(中文分词)

1. 特点

(1)支持三种分词模式:

  • 精确模式,试图将句子最精确地切开,适合文本分析;
  • 全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;
  • 搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。

(2)支持繁体分词

(2)支持自定义词典

(3)MIT 授权协议

2. 安装和使用说明

pip install jieba / pip3 install jieba

通过 import jieba 进行引用

3. 主要功能

这里主要涉及到的是分词功能,详述如下:

(1)jieba.cut 方法接受三个输入参数:

  • 需要分词的字符串;
  • cut_all 参数用来控制是否采用全模式;
  • HMM 参数用来控制是否使用 HMM 模型。

(2)jieba.cut_for_search 方法接受两个参数:

  • 需要分词的字符串;
  • 是否使用 HMM 模型。

该方法适合用于搜索引擎构建倒排索引的分词,粒度比较细。

1. 待分词的字符串可以是 unicode 或 UTF-8 字符串、GBK 字符串。

2. 不建议直接输入 GBK 字符串,可能无法预料地错误解码成 UTF-8。

3. jieba.cut 以及 jieba.cut_for_search 返回的结构都是一个可迭代的 generator,可以使用 for 循环来获得分词后得到的每一个词语(unicode),或者用jieba.lcut 以及jieba.lcut_for_search 直接返回 list。

(3)jieba.Tokenizer(dictionary=DEFAULT_DICT) 新建自定义分词器,可用于同时使用不同词典。jieba.dt 为默认分词器,所有全局分词相关函数都是该分词器的映射。

4. 示例代码

(1)实现代码:

 1 # coding=utf-8
 2 import jieba
 3
 4 text = "轻轻地我走了正如我轻轻地来"
 5
 6 seg_list = jieba.cut(text, cut_all=False)
 7 print("Default Mode: " + "/ ".join(seg_list))       # 精确模式
 8
 9 seg_list = jieba.cut(text, cut_all=True)
10 print("Full Mode: " + "/ ".join(seg_list))          # 全模式
11
12 seg_list = jieba.cut_for_search(text)
13 print("Search Mode: " + "/ ".join(seg_list))        # 搜索引擎模式

(2)运行结果:

1.2 Python第三方库wordcloud(词云)

1. 安装和使用说明

pip install wordcloud / pip3 install wordcloud

通过 import wordcloud 进行引用

2. 主要功能

wordcloud把词云当作一个对象,它可以将文本中词语出现的频率作为一个参数绘制词云,而词云的大小、颜色、形状等都是可以设定的。

生成词云的步骤如下:

(1)配置对象参数

(2)加载词云文本

(3)输出词云文件 (如果不加说明默认的图片大小为400 * 200)

3. 常见的参数列表

2 制作生成词云

2.1 生成《新冠病毒无症状感染者管理规范》的词云

(1)实现代码:

 1 # coding=utf-8
 2 import matplotlib.pyplot as plt
 3 import jieba
 4 from wordcloud import WordCloud
 5
 6 # 1.读入txt文本数据
 7 with open("test.txt", ‘r‘) as f:
 8           text=f.read()
 9
10 # 2.分词
11 cut_text = " ".join(jieba.cut(text))
12
13 # 3.生成词云
14 wc = WordCloud(
15     font_path=r‘.\simhei.ttf‘,
16     background_color = ‘white‘,
17     width = 1000,
18     height = 880,
19 ).generate(cut_text)
20
21 # 4.显示词云图片
22 plt.imshow(wc, interpolation="bilinear")
23 plt.axis(‘off‘)
24 plt.show()

(2)运行结果:

2.2 生成《关于做好高校毕业生就业创业工作的通知》的词云

(1)实现代码:

 1 # coding=utf-8
 2 import PIL.Image as image
 3 import numpy as np
 4 import matplotlib.pyplot as plt
 5 import jieba
 6 from wordcloud import WordCloud, ImageColorGenerator
 7
 8 def GetWordCloud():
 9     path_txt = "test.txt"
10     path_img = "test.jpg"
11     # 1.读入txt文本数据
12     with open(path_txt, ‘r‘) as f:
13           text=f.read()
14     background_image = np.array(image.open(path_img))
15
16     # 2.分词
17     cut_text = " ".join(jieba.cut(text))
18
19     # 3.生成词云
20     wc = WordCloud(
21         font_path=r‘.\simhei.ttf‘,
22         background_color = ‘white‘,
23         mask=background_image
24     ).generate(cut_text)
25
26     # 生成颜色值
27     image_colors = ImageColorGenerator(background_image)
28
29     # 4.显示词云图片
30     plt.imshow(wc.recolor(color_func=image_colors), interpolation="bilinear")
31     plt.axis(‘off‘)
32     plt.show()
33
34
35 if __name__ == "__main__":
36     GetWordCloud()

(2)运行结果:

Python第三方库jieba(中文分词)

原文地址:https://www.cnblogs.com/yangmi511/p/12676116.html

时间: 2024-08-04 13:30:53

基于Python实现词云制作的相关文章

Python -WordCloud安装、词云制作

一.WordCloud 安装 说明:Windows系统直接pip install wordcloud 是不行的,命令行会报错. 第一步:检查自己的Python 版本.Win+R ——>CMD——>命令行输入python,我的是python 3.7 win32位的 第二步:下载对应版本的WordCloud,进入 python 扩展包库 (非正式第三方whl文件包)下载 第三步:安装.命令行先定位到下载的wordcloud安装文件路径,再输入 pip install wordcloud-1.6.0

使用Python定制词云

一.实验介绍 1.1 实验内容 在互联网时代,人们获取信息的途径多种多样,大量的信息涌入到人们的视线中.如何从浩如烟海的信息中提炼出关键信息,滤除垃圾信息,一直是现代人关注的问题.在这个信息爆炸的时代,我们每时每刻都要更新自己的知识储备,而网络是最好的学习平台.对信息过滤和处理能力强,学习效率就会得到提高."词云"就是为此而诞生的."词云"是对网络文本中出现频率较高的"关键词"予以视觉上的突出,形成"关键词云层"或"

python生成词云

期末复习比较忙过段时间来专门写scrapy框架使用,今天介绍如何用python生成词云,虽然网上有很多词云生成工具,不过自己用python来写是不是更有成就感. 今天要生成的是励志歌曲的词云,百度文库里面找了20来首,如<倔强>,海阔天空是,什么的大家熟悉的. 所要用到的python库有 jieba(一个中文分词库).wordcould .matplotlib.PIL.numpy. 首先我们要做的是读取歌词.我将歌词存在了文件目录下励志歌曲文本中. 现在来读取他 #encoding=gbk l

使用python绘制词云

最近在忙考试的事情,没什么时间敲代码,一个月也没几天看代码,最近看到可视化的词云,看到网上也很多这样的工具, 但是都不怎么完美,有些不支持中文,有的中文词频统计得莫名其妙.有的不支持自定义形状.所有的都不能自定义颜色 于是网上找了一下,决定用python绘制词云,主要用到的是wordcloud库,安装只需要pip isntall wordcloud就行, 数据用的是酒店评论的数据,代码如下: # -*- coding: utf-8 -*- import matplotlib.pyplot as

python做词云 (WordCloud)

python做词云 (WordCloud) 1. 安装 某个教程给出的方法,到[这里][1]下载相应的wordcolud,然后到相应目录pip安装. 其实直接 pip install wordcloud 就ok了 ,进入python. import wordcloud成功即可. ##2. 文档简要说明 可以看到文档主要就3个主要的函数,目前主要介绍WordCloud模块以及相关的函数. WordCloud() class wordcloud.WordCloud(font_path=None, w

词云制作没那么难,Python 10 行代码就实现了!

写在前面 想必大家有一个问题.什么是词云呢? 词云又叫名字云,是对文本数据中出现频率较高的"关键词"在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思.. 网页上有许多词云的效果图: 而且,目前有许多制作词云的工具: 但是作为一个学习Python的程序员来说,我更喜欢通过自己的编程去解决问题. 而且用Python制作词云只需十行代码就行了哦~ 一起来看看吧! 代码块 import matplotlib.pyplot as plt fr

如何用Python做词云(收藏)

看过之后你有什么感觉?想不想自己做一张出来? 如果你的答案是肯定的,我们就不要拖延了,今天就来一步步从零开始做个词云分析图.当然,做为基础的词云图,肯定比不上刚才那两张信息图酷炫.不过不要紧,好的开始是成功的一半嘛.食髓知味,后面你就可以自己升级技能,进入你开挂的成功之路. 网上教你做信息图的教程很多.许多都是利用了专用工具.这些工具好是好,便捷而强大.只是它们功能都太过专一,适用范围有限.今天我们要尝试的,是用通用的编程语言Python来做词云. Python是一种时下很流行的编程语言.你不仅

+中文词频统计及词云制作9-25

1.我希望老师能讲一点python在数据挖掘,数据分析领域的应用,最好能举些实例,或者说带我们实际操作一波. 2.中文分词 下载一中文长篇小说,并转换成UTF-8编码   使用jieba库,进行中文词频统计,输出TOP20的词及出现次数. >>>import jieba >>>lr = open('斗破苍穹第一章.txt','w') >>>lr.write('''大陆名为斗气大陆,大陆上并没有小说中常见的各系魔法,而斗气,才是大陆的唯一主调! 在这片大

Python数据挖掘-词云

词云绘制 1.语料库的搭建.分词来源.移除停用词.词频统计 使用方法:os.path.join(path,name)   #连接目录与文件名或目录 结果为path/name import os import os.path import codecs filePaths=[] fileContents=[] for root,dirs,files in os.walk("D:\\Python\\Python数据挖掘\\Python数据挖掘实战课程课件\\2.4\\SogouC.mini\\Sam