Python - 利用词云wordcloud,jieba和中国地图制作四大名著的热词图

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

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]))

输出:

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

原文地址:https://www.cnblogs.com/johnthegreat/p/12595892.html

时间: 2024-10-18 23:59:53

Python - 利用词云wordcloud,jieba和中国地图制作四大名著的热词图的相关文章

词云wordcloud类介绍&python制作词云图&词云图乱码问题等小坑

词云图,大家一定见过,大数据时代大家经常见,我们今天就来用python的第三方库wordcloud,来制作一个大数据词云图,同时会降到这个过程中遇到的各种坑, 举个例子,下面是我从自己的微信上抓的微信好友签名,制作的词云图:看来用的做多的还是"方得始终"啊 首先我们需要几个库,pip完了导入 1 import chardet #检测字符类型的类 2 from wordcloud import WordCloud #词云库 3 import matplotlib.pyplot as pl

词云wordcloud

pip install wordcloud 没有报错,如果有错误可以从http://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud下载whl文件直接安装. # -*- coding: utf-8 -*- __author__ = 'leilu' #wordcloud生成中文词云 from wordcloud import WordCloud import codecs import jieba #import jieba.analyse as anal

数据词云(wordcloud)

import pandas as pdimport numpy as npfrom pandas import Seriesfrom pandas import DataFramefrom wordcloud import WordCloud,ImageColorGeneratorimport matplotlib.pyplot as pltimport jiebafrom PIL import Image df =pd.read_csv('ZHILIAN_SPIDER.csv',header=

python pip安装加速以及安装词云 wordcloud报错解决方法

我们正常用pip直接下载的话,因为是国外的下载源,所以下载的东西还是很慢的,而一旦断了就是红字了. 所以我们可以切换到国内的pip源来下载. 对于Python开发用户来讲,PIP安装软件包是家常便饭.但国外的源下载速度实在太慢,浪费时间.而且经常出现下载后安装出错问题.所以把PIP安装源替换成国内镜像,可以大幅提升下载速度,还可以提高安装成功率 国内源: 新版ubuntu要求使用https源,要注意. 清华:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云

Python词云wordcloud模板

很简单: import wordcloud import jieba import time start=time.perf_counter() f=open('xyy.txt','r',encoding='gbk') #这里的编码格式还不太了解,有的用utf-8,有的用gbk t=f.read() f.close() ls=jieba.lcut(t) txt=' '.join(ls) w=wordcloud.WordCloud(font_path='msyh.ttc',width=1000,h

windows下anaconda安装词云wordcloud

去这个网站:https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud   查找与你电脑上安装python版本对应的whl文件 原文地址:https://www.cnblogs.com/daacheng/p/8486139.html

Python -WordCloud安装、词云制作

一.WordCloud 安装 说明:Windows系统直接pip install wordcloud 是不行的,命令行会报错. 第一步:检查自己的Python 版本.Win+R ——>CMD——>命令行输入python,我的是python 3.7 win32位的 第二步:下载对应版本的WordCloud,进入 python 扩展包库 (非正式第三方whl文件包)下载 第三步:安装.命令行先定位到下载的wordcloud安装文件路径,再输入 pip install wordcloud-1.6.0

Python 词云 【中/英】小白简单入门教程

1. 分析 构建词云需要具备: 原料即文章等内容 将内容进行分词 将分词后的内容利用构建词云的工具进行构建 保存成图片 2. 需要的主要模块 jieba 中文分词 wordcloud 构建词云 3. 模块原理 wordcloud的实现原理 文本预处理 词频统计 将高频词以图片形式进行彩色渲染 jieba的实现原理 进行中文分词(有多种模式)[详情] 4. 英文词云 英文分词和构建词云只需要wordcloud模块 具体实现如下: 1 from wordcloud import WordCloud

jieba库使用和好玩的词云

jieba库的使用: (1)  jieba库是一款优秀的 Python 第三方中文分词库,jieba 支持三种分词模式:精确模式.全模式和搜索引擎模式,下面是三种模式的特点. 精确模式:试图将语句最精确的切分,不存在冗余数据,适合做文本分析 全模式:将语句中所有可能是词的词语都切分出来,速度很快,但是存在冗余数据 搜索引擎模式:在精确模式的基础上,对长词再次进行切分. (2).jieba库常用函数 函数 描述 jieba.lcut(s) 精确模式,返回一个列表类型的分词结果>>>jieb