Python生成中文词云图(二):不可指定词云特定的形状和颜色。

什么是词云?

首先,什么是词云呢?词云又叫文字云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思。

本文目的:

本篇博客主要介绍利用python的wordcloud包实现生成中文词云。不可指定词云特定的形状和颜色。
Python生成英文词云图请参见博客Python生成英文词云图。

电脑环境要求:

安装好Pycharm或者Anaconda。建议同时安装Pycharm和Anaconda,并且将Pycharm配置好Anaconda,这样就不用手动安装wordcloud包和jieba分词包等了,以后也不用安装其他一些常用的包了。
安装Pycharm和Anaconda请参见Pycharm中使用Anaconda。

代码实现:

#coding=utf-8
#Version:python3.6.0
#添加自定义分词import jieba
from os import path  #用来获取文档的路径#词云
from PIL import Image
import numpy as  np
import matplotlib.pyplot as plt
#词云生成工具
from wordcloud import WordCloud,ImageColorGenerator
#需要对中文进行处理
import matplotlib.font_manager as fm#背景图
bg=np.array(Image.open("tuoyuan.jpg"))#获取当前的项目文件加的路径
d=path.dirname(__file__)
#读取停用词表
stopwords_path='stopwords.txt'
#添加需要自定以的分词
jieba.add_word("叶文洁")
jieba.add_word("汪淼")
jieba.add_word("史强")
jieba.add_word("常伟思")
jieba.add_word("杨冬")
jieba.add_word("丁仪")
jieba.add_word("伊文斯")
jieba.add_word("罗辑")
jieba.add_word("章北海")
jieba.add_word("庄颜")
jieba.add_word("东方延绪")
jieba.add_word("云天明")
jieba.add_word("程心")
jieba.add_word("艾AA")
jieba.add_word("智子")
jieba.add_word("关一帆")#读取要分析的文本
text_path="santi.txt"
#读取要分析的文本,读取格式
text=open(path.join(d,text_path),encoding="utf8").read()
#定义个函数式用于分词
def jiebaclearText(text):#定义一个空的列表,将去除的停用词的分词保存mywordList=[]#进行分词seg_list=jieba.cut(text,cut_all=False)#将一个generator的内容用/连接listStr='/'.join(seg_list)#打开停用词表f_stop=open(stopwords_path,encoding="utf8")#读取try:f_stop_text=f_stop.read()finally:f_stop.close()#关闭资源#将停用词格式化,用\n分开,返回一个列表f_stop_seg_list=f_stop_text.split("\n")#对默认模式分词的进行遍历,去除停用词for myword in listStr.split('/'):#去除停用词if not(myword.split()) in f_stop_seg_list and len(myword.strip())>1:mywordList.append(myword)return ' '.join(mywordList)
text1=jiebaclearText(text)
#生成
wc=WordCloud(background_color="white", #设置背景为白色,默认为黑色width=990,              #设置图片的宽度height=440,              #设置图片的高度margin=10,               #设置图片的边缘max_font_size=50,random_state=30,font_path='C:/Windows/Fonts/simkai.ttf'   #中文处理,用系统自带的字体).generate(text1)
#为图片设置字体
my_font=fm.FontProperties(fname='C:/Windows/Fonts/simkai.ttf')
#产生背景图片,基于彩色图像的颜色生成器
image_colors=ImageColorGenerator(bg)
#开始画图
plt.imshow(wc)
#为云图去掉坐标轴
plt.axis("off")
#画云图,显示
#保存云图
wc.to_file("tuoyuan3.png")

生成的中文词云图:

参考资料:

1、基于python的词云生成(二)
2、Pycharm中使用Anaconda

Python生成中文词云图(二):不可指定词云特定的形状和颜色。相关推荐

  1. Python生成中文词云图(一):可指定特定的词云形状和颜色。

    Python生成中文词云图 什么是词云? 首先,什么是词云呢?词云又叫文字云,是对文本数据中出现频率较高的"关键词"在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从 ...

  2. 用Python生成动态好玩的二维码

    用Python生成动态好玩的二维码 互联网时代可谓是一手机走天下,二维码已经成为我们工作生活中不可或缺的一种媒介了,不管是社交.出行还是支付,二维码已经在熟悉不过了,似乎人人都有一种"见码就 ...

  3. python生成中文词云图

    jieba库是一个非常优秀的中文分词软件,其中一个应用就是来完成一个词云图的设计 首先你需要准备这些库 import jieba import matplotlib.pyplot as plt imp ...

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

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

  5. python 10行代码生成词云图片(基础词云、形状词云)

    一.词云简介 词云,也称为文本云或标签云.在词云图片中,关键词在文本中出现的次数越多,则表示该词越重要,其在词云中所占面积区域也越大,出现次数越少,所占面积越小.词云可任意更换背景为白色的图形以改变词 ...

  6. [转载] 如何使用 Python 生成酷炫的二维码?

    参考链接: Python | 使用pyqrcode模块生成QR码 新时代,人们有新的追求,自然而然会有新发明的诞生.去年,在"一带一路"国际合作高峰论坛举行期间,20 国青年投票选 ...

  7. python——生成带logo的二维码图片并且保存、控制打印机打印图片二维码、整合打印(获取输入框的值)、打包成exe文件

    1.生成带logo的二维码图片并且保存 前提条件:在D盘里有logo.png的图片,生成的二维码图片在D盘里的111.png import qrcode from PIL import Image# ...

  8. python背景颜色词云图_python中实现词云图

    import matplotlib.pyplot as plt import jieba from wordcloud import wordcloud # 1.读出词语 text = open('t ...

  9. python生成xml文件工具_Python根据指定文件生成XML的方法

    因项目需要根据指定格式的文件生成XML标注文件,可以方便使用LabelImg打开进行编辑和查看.其原始文件默认使用逗号进行分隔,如下所示: 第1个值:原始图片中切图小文件,以AIpng_x,其中x代表 ...

最新文章

  1. java显示位图_java – 大图标位图在通知中显示为白色方块?
  2. linux内核kconfig objs,linux内核中Kconfig和Makefile 详解
  3. python基础语法手册format-python基础_格式化输出(%用法和format用法)
  4. 如何绘制深度学习-目标检测评估指标P-R(precision-recall)曲线?如何计算AP(average-precision)?
  5. Eclipse里代码自动完成 auto completion的快捷键设置
  6. 用友UI层获取机构的方法
  7. 2021全国计算机二级知识点,2021年度Dlypeq全国计算机等级考试二级公共基础知识点总结.doc...
  8. cache log:minzip: zlib inflate call failed (zerr=-3)
  9. 典型微型计算机控制系统的实例,微型计算机控制技术
  10. 《游戏大师Chris Crawford谈互动叙事》一导读
  11. 求解会议安排问题(回溯,C++)
  12. HTTP POST GET
  13. java 泰文的编码_Unicode字符编码表(转)
  14. icloud显示账户详情不可用,苹果icloud账户详情不可用怎么办 iPhone提示当前账户详情不可用怎么回事...
  15. Gym - 101853E E. Maximum Sum (状压DP)
  16. TM1637芯片驱动数码管 – play with TM1637 seven segment display driver
  17. sparksql读取数据过大报java.lang.OutOfMemoryError: Java heap space
  18. 什么是死锁?如何避免死锁?
  19. J-Flash 读取Flash数据
  20. bitwarden_rs 搭建自托管的密码服务器

热门文章

  1. 今日头条自媒体怎么提高推荐量
  2. 单播、多播(组播)和广播的差别
  3. 设置plsql永久注册码
  4. windows创建文件硬连接
  5. java int格式转换文本_java 文件导出Excel 文本形式转数字格式解决,字段是int导出需求是数字解决方案...
  6. Kubeconfig 切换上下文
  7. 一步一步玩转树莓派~
  8. 网络性能衡量指标总结
  9. python数据处理工具-Pandas笔记
  10. 攻防世界 转轮机加密