准备工作

  主要用到Python的两个第三方库

  • jieba:中文分词工具
  • wordcloud:python下的词云生成工具

步骤

  1. 准备语料库,词云图需要的背景图片
  2. 使用jieba进行分词,去停用词,词频统计等
  3. 使用wordcloud进行词频展示

主要代码

 import jieba
jieba.load_userdict('userdict.txt') # 加载自定义词典
sentence_depart = jieba.cut(sentence) # 分词
stop_words = stop_word_list() # 创建停用词列表
out_str = ''
# 去停用词
for word in sentence_depart:
if word not in stop_words:
if word != '\t':
out_str += word
out_str += " "
 from os import path
from scipy.misc import imread
import jieba.analyse
import matplotlib.pyplot as plt
from wordcloud import WordCloud d = path.dirname(__file__) # 返回当前运行脚本下的绝对路径
back_coloring_path = "1.jpg" # 随意准备一张图片,用来设置词云形状
back_coloring = imread(path.join(d, back_coloring_path)) # 读取图片 f = open(u'out.txt', 'r', encoding='utf-8').read() # out.txt已经处理好的分词数据
tags = jieba.analyse.extract_tags(f, topK=100, withWeight=False) # 关键词提取 topK=100 提取TF-IDF权重最大的前100个关键词
text = " ".join(tags) wordcloud = WordCloud(background_color='white',
width=2000,
height=1000,
margin=2,
max_words=100, # 设置最多显示的词数
mask=back_coloring, # 设置词云形状
font_path="simhei.ttf", # 中文词图必须设置字体格式,否则会乱码,这里加载的是黑体
random_state=10) # 设置有多少种随机生成状态,即有多少种配色方案
w = wordcloud.generate(text) # 传入需画词云图的文本
plt.imshow(w)
plt.axis('off') # 关闭坐标轴
plt.show()

比如:传入如下两张图片作为词图的形状

词云图结果

参考资料:https://www.jianshu.com/p/2052d21a704c

python绘制中文词云图的更多相关文章

  1. python绘制WordCloud词云图

    目录 前言 核心代码 测试 前言 当我们想快速了解书籍.小说.电影剧本中的内容时,可以绘制 WordCloud 词云图,显示主要的关键词(高频词),可以非常直观地看到结果 核心代码 from word ...

  2. 吃瓜的正确姿势,Python绘制罗志祥词云图

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 这篇文章中向大家介绍了Python绘制词云的方法,不难看出绘制词云可以说是一 ...

  3. 超详细:Python(wordcloud+jieba)生成中文词云图

    # coding: utf-8 import jieba from scipy.misc import imread # 这是一个处理图像的函数 from wordcloud import WordC ...

  4. Python3制作中文词云图

    1. 准备好文本数据 2. pip install jieba 3. pip install wordcloud 4. 下载字体例如Songti.ttc(mac系统下的称呼,并将字体放在项目文件夹下) ...

  5. (数据科学学习手札71)在Python中制作个性化词云图

    本文对应脚本及数据已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 一.简介 词云图是文本挖掘中用来表征词频的数据可视化 ...

  6. 用Python制作酷炫词云图,原来这么简单!

    一.简介词云图是文本挖掘中用来表征词频的数据可视化图像,通过它可以很直观地展现文本数据中地高频词:! 图1 词云图示例 在Python中有很多可视化框架可以用来制作词云图,如pyecharts,但这些 ...

  7. [python] 基于词云的关键词提取:wordcloud的使用、源码分析、中文词云生成和代码重写

    1. 词云简介 词云,又称文字云.标签云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思.常见于博客.微博 ...

  8. python词云图与中文分词

    2019-12-12中文文本分词和词云图具体功能介绍与学习代码: import jiebaa="由于中文文本的单词不是通过空格或者标点符号来进行分割"#jieba.lcut()s是 ...

  9. python 绘制词云图

    1. 先下载并安装nltk包,准备一张简单的图片存入代码所在文件目录,搜集英文停用词表 import nltk nltk.download() 2. 绘制词云图 import re import nu ...

随机推荐

  1. docker-- 卷

    进入容器centos终端中 #docker   attach   c1 在 容器中安装nginx #yum   install  epel-relesae #yum  install  nginx # ...

  2. python基础篇_005_迭代器和生成器

    Python迭代器和生成器 1.迭代器 迭代:可以将某个数据集内的数据“一个挨着一个的取出来” for i in range(1, 10, 2): # in 后面的对象必须是一个可迭代的 print( ...

  3. Git 配置用户名、密码

    在终端输入: git config --global credential.helper store 然后git pull一次,输入一次用户名密码就会自动保存该用户名密码: 查看配置的用户信息: gi ...

  4. Handler Looper 解析

    文章讲述Looper/MessageQueue/Handler/HandlerThread相关的技能和使用方法. 什么是Looper?Looper有什么作用? Looper是用于给线程(Thread) ...

  5. 编程菜鸟的日记-初学尝试编程-C++ Primer Plus 第5章编程练习7

    #include <iostream>#include <cstring>const MAXSIZE=100;using namespace std;int main (){  ...

  6. 《MySQL技术内幕》读书笔记

    序章 MySQL的安装 源码编译安装 MySQL的配置 基础配置 mysqld程序:语言设置 mysqld程序:通信.网络.信息安全 mysqld程序:内存管理.优化.查询缓存区 mysqld程序:日 ...

  7. ElasticSeaarch 遇到的问题 (-)

    1 elasticSearch 不能通过ip访问 智只能通过localhost访问,或者在外网部署的时候不能访问: elasticsearch.yml文件 中将下面的配置去掉注释符,  network ...

  8. hdfs OutOfMemoryError

    大量推送本地文件到hdfs如下 hadoop fs -put ${local_path} ${hdfs_path}报错. Exception in thread "main" ja ...

  9. Java中的字符串截取(substring)的使用

    import java.util.*; public class ZiFu { public static void main(String args[]){ System.out.println(& ...

  10. 基于STM32的USB枚举过程学习笔记(转)

    之前使用ST官方的库以及网络的资料,完成了使用USB HID类进行STM32和PC机的通讯.由于其他原因并没有深入的分析,虽然实现了功能,但是关于USB设备的枚举,以及具体的通讯方式都没有清晰的概念, ...