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装饰器decorator介绍
Nov 21 Python
Python实现二叉堆
Feb 03 Python
Python简单实现Base64编码和解码的方法
Apr 29 Python
详解python上传文件和字符到PHP服务器
Nov 24 Python
python如何读写json数据
Mar 21 Python
python调用其他文件函数或类的示例
Jul 16 Python
python打包成so文件过程解析
Sep 28 Python
python装饰器练习题及答案
Nov 01 Python
Python线程障碍对象Barrier原理详解
Dec 02 Python
jupyter实现重新加载模块
Apr 16 Python
python实现梯度下降算法的实例详解
Aug 17 Python
Python可视化工具如何实现动态图表
Oct 23 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把数字转成人民币大写的函数分享
2014/06/30 PHP
Prototype使用指南之range.js
2007/01/10 Javascript
javascript qq右下角滑出窗口 sheyMsg
2010/03/21 Javascript
验证码按回车不变解决方法
2013/03/29 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
解决extjs grid 不随窗口大小自适应的改变问题
2014/01/26 Javascript
jQuery过滤选择器详解
2015/01/13 Javascript
JS实现slide文字框缩放伸展效果代码
2015/11/05 Javascript
js实现数组冒泡排序、快速排序原理
2016/03/08 Javascript
JavaScript学习笔记之数组去重
2016/03/23 Javascript
BootStrap selectpicker
2016/06/20 Javascript
jQuery纵向导航菜单效果实现方法
2016/12/19 Javascript
js设置文字颜色的方法示例
2016/12/30 Javascript
Vue.extend构造器的详解
2017/07/17 Javascript
Javascript别踩白块儿(钢琴块儿)小游戏实现代码
2017/07/20 Javascript
vue实现登录后页面跳转到之前页面
2018/01/07 Javascript
JS实现利用闭包判断Dom元素和滚动条的方向示例
2019/08/26 Javascript
如何手动实现一个 JavaScript 模块执行器
2020/10/16 Javascript
pyqt4教程之实现windows窗口小示例分享
2014/03/07 Python
Vue的el-scrollbar实现自定义滚动
2018/05/29 Python
python指定写入文件时的编码格式方法
2018/06/07 Python
如何使用Python实现斐波那契数列
2019/07/02 Python
Python3读取和写入excel表格数据的示例代码
2020/06/09 Python
python源文件的字符编码知识点详解
2021/03/04 Python
整理的15个非常有用的 HTML5 开发教程和速查手册
2011/10/18 HTML / CSS
荷兰的时尚市场:To Be Dressed
2019/05/06 全球购物
经济系大学生求职信
2013/10/01 职场文书
外贸业务员求职信范文
2013/12/12 职场文书
原材料检验岗位职责
2014/03/15 职场文书
研发工程师岗位职责
2014/04/28 职场文书
英语专业自荐书
2014/06/13 职场文书
授权委托书样本及填写说明
2014/09/19 职场文书
副校长个人对照检查材料思想汇报
2014/10/04 职场文书
迎国庆横幅标语
2014/10/08 职场文书
民主生活会发言材料
2014/10/20 职场文书
放假通知格式
2015/04/14 职场文书