Python基于wordcloud及jieba实现中国地图词云图


Posted in Python onJune 09, 2020

热词图很酷炫,也非常适合热点事件,抓住重点,以图文结合的方式表现出来,很有冲击力。下面这段代码是制作热词图的,用到了以下技术:

jieba,把文本分词

wordcloud,制作热图

chardet,辨别文件的编码格式,其中中文统一为GB18030,更加的兼容

imageio,提取图片的形状

其他:自动识别文件编码,自动识别txt文件,图片文件名与txt文件一致,使用的是四大名著的文本(自行百度),部分中国地图

上代码:

import os
import jieba
import wordcloud
import chardet
import imageio
 
directory = "D:\\"
mask = imageio.imread(r"D:\map.jpg") # 用于最后图像图形
 
directory_lists = os.scandir(directory)
for directory_list in directory_lists:
 
  if directory_list.is_dir() or directory_list.path.split('.')[-1] != "txt":
    continue
 
  with open(directory_list.path, 'rb') as fd:
    coding = chardet.detect(fd.read()[:1000])['encoding']
    if coding.upper() == 'GB2312' or coding == 'GBK':
      coding = 'GB18030'
  file = open(directory_list.path, 'r', encoding=coding)
  text = file.read()
  file.close()
  jieba_text = ' '.join(jieba.lcut(text))
 
  w = wordcloud.WordCloud(height=800, width=1600, font_path='msyh.ttc', background_color='white', stopwords={'Page'}, mask=mask)
  w.generate(jieba_text)
  w.to_file('{}.png'.format(directory_list.path.split('.')[0]))

输出:

水浒传的如下

Python基于wordcloud及jieba实现中国地图词云图

西游记的如下

Python基于wordcloud及jieba实现中国地图词云图

仔细看输出的内容,还是挺有意思的,哈哈哈。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之玩转字符串(2)更新篇
Sep 28 Python
python实现DES加密解密方法实例详解
Jun 30 Python
python中类和实例如何绑定属性与方法示例详解
Aug 18 Python
Python数据结构与算法之图的广度优先与深度优先搜索算法示例
Dec 14 Python
用python写扫雷游戏实例代码分享
May 27 Python
Python查找最长不包含重复字符的子字符串算法示例
Feb 13 Python
20行python代码的入门级小游戏的详解
May 05 Python
python实现LRU热点缓存及原理
Oct 29 Python
Python 自由定制表格的实现示例
Mar 20 Python
完美解决Django2.0中models下的ForeignKey()问题
May 19 Python
Python利用matplotlib绘制折线图的新手教程
Nov 05 Python
详解python使用金山词霸的翻译功能(调试工具断点的使用)
Jan 07 Python
Python中的__init__作用是什么
Jun 09 #Python
python小白学习包管理器pip安装
Jun 09 #Python
Python小白垃圾回收机制入门
Jun 09 #Python
Python中如何添加自定义模块
Jun 09 #Python
sklearn线性逻辑回归和非线性逻辑回归的实现
Jun 09 #Python
Python如何避免文件同名产生覆盖
Jun 09 #Python
对Keras中predict()方法和predict_classes()方法的区别说明
Jun 09 #Python
You might like
PHP 文件系统详解
2012/09/13 PHP
解决PHP4.0 和 PHP5.0类构造函数的兼容问题
2013/08/01 PHP
ThinkPHP中URL路径访问与模块控制器之间的关系
2014/08/23 PHP
PHP5.2下preg_replace函数的问题
2015/05/08 PHP
yii2 数据库读写分离配置示例
2017/02/10 PHP
JS 文字符串转换unicode编码函数
2009/05/30 Javascript
jquery获取radio值(单选组radio)
2014/10/16 Javascript
js读取json的两种常用方法示例介绍
2014/10/19 Javascript
JavaScript的jQuery库中function的存在和参数问题
2015/08/13 Javascript
jQuery实现的自定义滚动条实例详解
2016/09/20 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
JQuery ZTree使用方法详解
2017/01/07 Javascript
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
2018/06/10 Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
2018/06/29 Javascript
微信小程序实现漂亮的弹窗效果
2020/05/26 Javascript
详解JavaScript 为什么要有 Symbol 类型?
2019/04/03 Javascript
详解如何在Javascript和Sass之间共享变量
2019/11/13 Javascript
vue中使用elementUI组件手动上传图片功能
2019/12/13 Javascript
[46:16]2018DOTA2亚洲邀请赛3月30日 小组赛B组 iG VS VP
2018/03/31 DOTA
[54:41]2018DOTA2亚洲邀请赛3月30日 小组赛B组 VGJ.T VS paiN
2018/03/31 DOTA
Python中http请求方法库汇总
2016/01/06 Python
浅析Python编写函数装饰器
2016/03/18 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
2016/06/30 Python
OpenCV2从摄像头获取帧并写入视频文件的方法
2018/08/03 Python
彻彻底底地理解Python中的编码问题
2018/10/15 Python
解决python中os.listdir()函数读取文件夹下文件的乱序和排序问题
2018/10/17 Python
对python读取CT医学图像的实例详解
2019/01/24 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
浅谈Python 敏感词过滤的实现
2019/08/15 Python
使用NumPy读取MNIST数据的实现代码示例
2019/11/20 Python
Python pickle模块实现对象序列化
2019/11/22 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
2020/08/17 Python
Luxplus瑞典:香水和美容护理折扣
2018/01/28 全球购物
洛杉矶时尚女装系列:J.ING US
2019/03/17 全球购物
学习十八大精神心得体会
2013/12/31 职场文书
Oracle锁表解决方法的详细记录
2022/06/05 Oracle