jieba分词wordcloud词云
1.jieba库的基本介绍
(1)、jieba是优秀的中文分词第三方库
- 中文文本需要通过分词获得单个的词语
- jieba是优秀的中文分词第三方库,需要额外安装
- jieba库提供三种分词模式,最简单只需掌握一个函数
(2)、jieba分词的原理
Jieba
分词依靠中文词库利用一个中文词库,确定汉字之间的关联概率
汉字间概率大的组成词组,形成分词结果除了分词,用户还可以添加自定义的词组
2.jieba库使用说明
(1)、jieba
分词的三种模式
- 精确模式、全模式、搜索引擎模式
精确模式:把文本精确的切分开,不存在冗余单词
全模式:把文本中所有可能的词语都扫描出来,有冗余
搜索引擎模式:在精确模式基础上,对长词再次切分
3、wordcloud
wordcloud
是优秀的词云展示第三方库,以词语为基本单位,通过图形可视化的方式,更加直观和艺术的展示文本。
基本使用
wordcloud 库把词云当作一个WordCloud对象
wordcloud.WordCloud()代表一个文本对应的词云
可以根据文本中词语出现的频率等参数绘制词云
绘制词云的形状、尺寸和颜色均可设定
以WordCloud对象为基础,配置参数、加载文本、输出文件
常规方法
方法 | 描述 |
---|---|
w.generate ('分割后的分词') |
向WordCloud 对象中加载文本txt。w.generate('python and WordCloud') |
w.to_file(filename) |
将词云输出为图像文件,png或jpg格式 |
import wordcloud
c=wordcloud.WordCloud() #1.配置对象参数
c.generate("wordcloud by python") #2.加载词云文本
c.to_file("pywordcloud.png") #3.输出词云文件
wordcloud如何将文本转化为词云
- 1.分隔:以空格分隔单词
- 2.统计:单词出现次数并过滤
- 3.字体:根据统计配置字号
- 4.布局:颜色环境尺寸
配置对象参数
w= wordcloud.WordCloud(<参数>)
参数 | 描述 |
---|---|
width | 指定词云对象生成图片的宽度,默认400像素w=wordcloud.WordCloud(width=600) |
height | 指定词云对象生成图片的高度,默认200像素w=wordcloud.WordCloud(height=400) |
min_font_size | 指定词云中字体的最小字号,默认4号w=wordcloud.WordCloud(min_font_size=10) |
max_font_size | 指定词云中字体的最大字号,根据高度自动调节w=wordcloud.WordCloud(max_font_size=20) |
font_step | 指定词云中字体字号的步进间隔,默认为1w=wordcloud.WordCloud(font_step=2) |
font_path | 指定文体文件的路径,默认Nonew=wordcloud.WordCloud(font_path="msyh.ttc") |
max_words | 指定词云显示的最大单词数量,默认200w=wordcloud.WordCloud(max_words=20) |
stop_words | 指定词云的排除词列表,即不显示的单词列表w=wordcloud.WordCloud(stop_words="Python") |
mask | 指定词云形状,默认为长方形,需要引用imread()函数from scipy.msc import imread mk=imread("pic.png") w=wordcloud.WordCloud(mask=mk) |
background_color | 指定词云图片的背景颜色,默认为黑色w=wordcloud.WordCloud(background_color="white") |
实例
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# from scipy.misc import imread
from imageio import imread
import jieba
f = open('火影忍者.txt','r',encoding='utf-8')
data = f.read()
res = jieba.lcut(data)
result = ''.join(res)
color_mask = imread('鸣人.jpg')
wc = WordCloud(
mask = color_mask,
font_path=r'search-ms:displayname=“本地磁盘%20(C%3A)”中的搜索结果&crumb=location:C%3A%5C\Fonts\ygyxsziti2.0.ttf',
background_color='yellow',
height=1300,
width=2600,
max_font_size=50,
min_font_size=1,
)
wc.generate(result)
wc.to_file('火影忍者.png')
plt.imshow(wc)
plt.show()
jieba分词wordcloud词云的更多相关文章
- python使用matplotlib画图,jieba分词、词云、selenuium、图片、音频、视频、文字识别、人脸识别
一.使用matplotlib画图 关注公众号"轻松学编程"了解更多. 使用matplotlib画柱形图 import matplotlib from matplotlib impo ...
- python爬虫——京东评论、jieba分词、wordcloud词云统计
接上一章,动态页面抓取——抓取京东评论区内容. url=‘https://club.jd.com/comment/productPageComments.action?callback=fetchJS ...
- 数字、字符串、列表、字典,jieba库,wordcloud词云
一.基本数据类型 什么是数据类型 变量:描述世间万物的事物的属性状态 为了描述世间万物的状态,所以有了数据类型,对数据分类 为什么要对数据分类 针对不同的状态需要不同的数据类型标识 数据类型的分类 二 ...
- python3 wordcloud词云
wordclou:根据文本生成词云 一.词云设置 wc=WordCloud(width=400, height=200, #画布长.宽,默认(400,200)像素 margin=1, #字与字之间的距 ...
- NLP实现文本分词+在线词云实现工具
实现文本分词+在线词云实现工具 词云是NLP中比较简单而且效果较好的一种表达方式,说到可视化,R语言当仍不让,可见R语言︱文本挖掘——词云wordcloud2包 当然用代码写词云还是比较费劲的,网上也 ...
- wordcloud词云模块
wordcloud词云模块 下载 pip install wordcloud 使用 import wordcloud##调用整个模块 form wordcloud import WordCloud## ...
- python 基于 wordcloud + jieba + matplotlib 生成词云
词云 词云是啥?词云突出一个数据可视化,酷炫.以前以为很复杂,不想python已经有成熟的工具来做词云.而我们要做的就是准备关键词数据,挑一款字体,挑一张模板图片,非常非常无脑.准备好了吗,快跟我一起 ...
- jieba库与词云的使用——以孙子兵法为例
1.打开cmd安装jieba库和 matplotlib. 2.打开python,输入代码.代码如下: from wordcloud import WordCloud import matplotlib ...
- Python基于jieba的中文词云
今日学习了python的词云技术 from os import path from wordcloud import WordCloud import matplotlib.pyplot as plt ...
随机推荐
- CentOS7 Zookeeper 安装
集群部署 192.168.38.6 zk01192.168.38.7 zk02192.168.38.8 zk03 安装zookeeper,必须安装jdk. 1.下载 $ cd /usr/loca ...
- Spring中抽象类中使用EmbeddedValueResolverAware和@PostConstruct获取配置文件中的参数值
我的需求: 我有一个 abstract class 中包含了很多子类中需要用到的公共方法和变量,我想在抽象类中 使用@Value获取*.properties中的值.但是@Value必须要在Spring ...
- PHP中直接使用sql语句
SELECT * FROM `tf_user` WHERE (`company_id` = '117' OR `other_company_ids` LIKE '%117,%' OR `other_c ...
- VisualHull && association4D 观摩记录
简单记录一下自己对VisualHull 和 association4D 两个程序的理解,没有别的意思(当然是真的 由于进度还很慢,暂时只是简单记录一下发现的点和踩过的坑,做完再把资料汇总. Visua ...
- flutter-初识(基础语法)
前言:笔者学过 java,刚刚接触 flutter,记录下基本的一些语法. 一.认识Flutter Flutter 是 google 推出的,使用的 Dart 语言,它可以跨平台实现 Android ...
- json工具类(三)——net包
package com.ruoyi.common.utils.json; import java.util.List; import java.util.Map; import net.sf.json ...
- MySQL:实用 SQL 语句集合
写在前面的话 本文主要用于记录工作中不经常使用但是偶尔用到又非常有用的 SQL 语句,持续不断不定期更新. 数据库大小统计 1. 查看 MySQL 某个库的所有表大小,记录数,占用空间等. ,), ' ...
- 单片机成长之路(51基础篇)- 024 基于 N76E003 的按键按键状态机
前端时间要用按键,搞了个状态机(如图): main.c #include <N76E003.H> #include <SFR_Macro.h> //N76E003 SFR寄存器 ...
- Java反射获取泛型类型
本文链接:https://blog.csdn.net/hongxingxiaonan/article/details/49202613 在Java反射技术的应用中,取得一个类的成员.方法和构造函数相对 ...
- Asp.Net Core采用MailKit部署到Linux Docker连接邮件服务器报错
前段时间看文章了解到发邮件的SmtpClient已经过时了,微软官方推荐大家用其他解决方案,例如MailKit. https://docs.microsoft.com/zh-cn/dotnet/api ...