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 指定词云中字体字号的步进间隔,默认为1
w=wordcloud.WordCloud(font_step=2)
font_path 指定文体文件的路径,默认None
w=wordcloud.WordCloud(font_path="msyh.ttc")
max_words 指定词云显示的最大单词数量,默认200
w=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词云的更多相关文章

  1. python使用matplotlib画图,jieba分词、词云、selenuium、图片、音频、视频、文字识别、人脸识别

    一.使用matplotlib画图 关注公众号"轻松学编程"了解更多. 使用matplotlib画柱形图 import matplotlib from matplotlib impo ...

  2. python爬虫——京东评论、jieba分词、wordcloud词云统计

    接上一章,动态页面抓取——抓取京东评论区内容. url=‘https://club.jd.com/comment/productPageComments.action?callback=fetchJS ...

  3. 数字、字符串、列表、字典,jieba库,wordcloud词云

    一.基本数据类型 什么是数据类型 变量:描述世间万物的事物的属性状态 为了描述世间万物的状态,所以有了数据类型,对数据分类 为什么要对数据分类 针对不同的状态需要不同的数据类型标识 数据类型的分类 二 ...

  4. python3 wordcloud词云

    wordclou:根据文本生成词云 一.词云设置 wc=WordCloud(width=400, height=200, #画布长.宽,默认(400,200)像素 margin=1, #字与字之间的距 ...

  5. NLP实现文本分词+在线词云实现工具

    实现文本分词+在线词云实现工具 词云是NLP中比较简单而且效果较好的一种表达方式,说到可视化,R语言当仍不让,可见R语言︱文本挖掘——词云wordcloud2包 当然用代码写词云还是比较费劲的,网上也 ...

  6. wordcloud词云模块

    wordcloud词云模块 下载 pip install wordcloud 使用 import wordcloud##调用整个模块 form wordcloud import WordCloud## ...

  7. python 基于 wordcloud + jieba + matplotlib 生成词云

    词云 词云是啥?词云突出一个数据可视化,酷炫.以前以为很复杂,不想python已经有成熟的工具来做词云.而我们要做的就是准备关键词数据,挑一款字体,挑一张模板图片,非常非常无脑.准备好了吗,快跟我一起 ...

  8. jieba库与词云的使用——以孙子兵法为例

    1.打开cmd安装jieba库和 matplotlib. 2.打开python,输入代码.代码如下: from wordcloud import WordCloud import matplotlib ...

  9. Python基于jieba的中文词云

    今日学习了python的词云技术 from os import path from wordcloud import WordCloud import matplotlib.pyplot as plt ...

随机推荐

  1. CentOS7 Zookeeper 安装

    集群部署 192.168.38.6  zk01192.168.38.7  zk02192.168.38.8  zk03 安装zookeeper,必须安装jdk. 1.下载 $ cd /usr/loca ...

  2. Spring中抽象类中使用EmbeddedValueResolverAware和@PostConstruct获取配置文件中的参数值

    我的需求: 我有一个 abstract class 中包含了很多子类中需要用到的公共方法和变量,我想在抽象类中 使用@Value获取*.properties中的值.但是@Value必须要在Spring ...

  3. PHP中直接使用sql语句

    SELECT * FROM `tf_user` WHERE (`company_id` = '117' OR `other_company_ids` LIKE '%117,%' OR `other_c ...

  4. VisualHull && association4D 观摩记录

    简单记录一下自己对VisualHull 和 association4D 两个程序的理解,没有别的意思(当然是真的 由于进度还很慢,暂时只是简单记录一下发现的点和踩过的坑,做完再把资料汇总. Visua ...

  5. flutter-初识(基础语法)

    前言:笔者学过 java,刚刚接触 flutter,记录下基本的一些语法. 一.认识Flutter Flutter 是 google 推出的,使用的 Dart 语言,它可以跨平台实现 Android ...

  6. json工具类(三)——net包

    package com.ruoyi.common.utils.json; import java.util.List; import java.util.Map; import net.sf.json ...

  7. MySQL:实用 SQL 语句集合

    写在前面的话 本文主要用于记录工作中不经常使用但是偶尔用到又非常有用的 SQL 语句,持续不断不定期更新. 数据库大小统计 1. 查看 MySQL 某个库的所有表大小,记录数,占用空间等. ,), ' ...

  8. 单片机成长之路(51基础篇)- 024 基于 N76E003 的按键按键状态机

    前端时间要用按键,搞了个状态机(如图): main.c #include <N76E003.H> #include <SFR_Macro.h> //N76E003 SFR寄存器 ...

  9. Java反射获取泛型类型

    本文链接:https://blog.csdn.net/hongxingxiaonan/article/details/49202613 在Java反射技术的应用中,取得一个类的成员.方法和构造函数相对 ...

  10. Asp.Net Core采用MailKit部署到Linux Docker连接邮件服务器报错

    前段时间看文章了解到发邮件的SmtpClient已经过时了,微软官方推荐大家用其他解决方案,例如MailKit. https://docs.microsoft.com/zh-cn/dotnet/api ...