Python生成标签云/词云
原文地址:http://itdarcy.wang/index.php/20200104/355
python:3.7
功能模块:wordcloud 1.6.0、matplotlib 3.1.2
安装wordcloud
现在应该是能直接通过
pip install wordcloud
的方式安装了,如果不能安装可以从 这里 下载
选择的时候cp37表示python的版本是3.7,win_amd64表示64位,win32表示32位。然后通过
pip install wordcloud下载到本地后的全路径比如:pip install C:\Users\Administrator\Desktop\wordcloud-1.6.0-cp37-cp37m-win_amd64.whl
安装wordcloud。
一个最简单的实例
# 导入 wordcloud 模块和 matplotlib 模块
from wordcloud import WordCloud
import matplotlib.pyplot as plt# 读入一个txt文件
text = open('articles.txt', 'r').read()# 生成WordCloud对象并调用其中的generate()方法生成词云,其中传的参数为词的来源
wordcloud = WordCloud().generate(text)# 显示词云图片
plt.imshow(wordcloud)
plt.axis('off')
plt.show()# to_file()用来保存词云的方法
wordcloud.to_file('test.jpg')
效果如下
自定义词列表、词频
将词表定义为字典的形式
text_dict = {'you': 2993,'and': 6625,'in': 2767,'was': 2525,'the': 7845,
}
将这个text_dict
传入相应的构造词云的generate_from_frequencies()
方法即可
WordCloud().generate_from_frequencies(text_dict)
完整代码如下
# 导入 wordcloud 模块和 matplotlib 模块
from wordcloud import WordCloud
import matplotlib.pyplot as plt# 自定义词频字典
text_dict = {'you': 2993,'and': 6625,'in': 2767,'was': 2525,'the': 7845,
}# 传入test_dict生成词表
wordcloud = WordCloud().generate_from_frequencies(text_dict)# 显示词云图片
plt.imshow(wordcloud)
plt.axis('off')
plt.show()# 保存图片
wordcloud.to_file('test.jpg')
中文词云
1. 字体
中文的话需要自行指定字体,wordcloud这个模块中并没有封装中文字体。可以用系统的字体,字体的位置在 C:\Windows\Fonts
下
在字体上右击可以查看字体的名称
在生成wordcloud时通过 font_path = 'C:/Windows/Fonts/STKAITI.TTF'
属性指定字体位置,也可以自行下载字体样式,同样通过该属性指定其位置即可。
2. 分词
英文原生就是分好了词了的,就是空格。中文的句子中没有空格,需要通过其他的方式来分出词,jieba
是一个用来做中文分词的模块。
text = open('4test.txt').read()
list_text = list(jieba.cut(text))
这样就从一篇文章中分出来了所有的词形成了一个词列表
一个完成的程序
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jieba
from collections import Counter# 读入词来源文件
text = open('4test.txt',encoding='utf-8',errors='ignore').read()# 使用 jieba 分词
text_jieba = list(jieba.cut(text))# 使用 counter 做词频统计,选取出现频率前 100 的词汇
c = Counter(text_jieba)
common_c = c.most_common(100)# 配置词云参数
wc = WordCloud(# 设置字体font_path = 'C:/Windows/Fonts/STKAITI.TTF'
)
# 生成词云
wc.generate_from_frequencies(dict(common_c))
# 生成图片并显示
plt.figure()
plt.imshow(wc)
plt.axis('off')
plt.show()
# 保存图片
wc.to_file('test.jpg')
效果如下
可以看到它居然把标点符号也分出来了
Python生成标签云/词云相关推荐
- python程序创建词云 中国地图_就这么简单!使用Python生成漂亮的词云
原标题:就这么简单!使用Python生成漂亮的词云 作者:Linux迷 链接:https://www.linuxmi.com 词云是一种数据可视化技术,用于表示文本数据,其中每个单词的大小表示其出现的 ...
- 利用Python生成漂亮的词云,云的形状由你定
前言 在大数据时代,你竟然会在网上看到的词云,例如这样的. 看到之后你是什么感觉?想不想自己做一个? 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里 ...
- Python生成漂亮的词云,云的形状由你定
前言 在大数据时代,你竟然会在网上看到的词云,例如这样的. 看到之后你是什么感觉?想不想自己做一个? 如果你的答案是正确的,那就不要拖延了,现在我们就开始,做一个词云分析图,Python是一个当下很流 ...
- python爬取网易云音乐生成王力宏歌曲词云
python爬取网易云音乐生成王力宏歌曲词云 # -*- coding:utf-8 -*- # 网易云音乐,通过歌手id生成词云 import requests import sys,re,os fr ...
- Python编程:实现词云生成(附详细源码)
Python编程:实现词云生成(附详细源码) 词云是一种数据可视化的方式,它可以用来展示某个主题下的主要关键词汇.在Python中,我们可以使用 wordcloud 库来实现词云的生成.本文将带您一步 ...
- python学习笔记---中文词云
python学习笔记–中文词云 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 发现词云的展示还挺有意思的,比较多的应用场景是给用户打标签,社交软件应用较多.今天随便找了一些文字电影 ...
- python歌词分析_Python 词云分析周杰伦新歌《说好不哭》
周杰伦难得出新歌 ,最近终于推出了单曲<说好不哭>,然后直接把QQ音乐服务器干崩了,天王的实力可见一斑,QQ音乐还把这个当作 今天过年 看我公众号头像就知道是杰伦粉了 ,高中的时候开始喜欢 ...
- 利用python做微信聊天记录词云分析——记录美好回忆
目录 1 概述 2 数据准备 2.1 安卓设备 2.1.1 Root手机,安装Root Explorer 2.1.2 用Root Explorer将聊天记录的数据文件导出并存入电脑 2.1.3 对En ...
- 使用爬虫抓取网易云音乐热门评论生成好玩的词云
互联网爬虫是一个很有意思的技术,借由爬虫,我们可以做到很多好玩的事情--这其中就包括爬取评论. 词云就是个更好玩的技术,通过技术方法分析词语出现频率,生成可视化的图形,将文字内容用图形呈现,想想就很意 ...
- WordCloud生成卡卡西忍术词云
前言 本想果断的说,卡卡西是火影里面最帅的人物.但是出于对大家的尊重,我把这句话改成:"卡卡西是动漫界最帅的人物",不接受任何反驳. 一.项目介绍 在介绍之前,先给大家来个用香克斯 ...
最新文章
- android 键盘右下角回车改为搜索
- 求职者提问的问题面试官不会_如何通过三个简单的问题就不会陷入求职困境
- Python组合数据类型之序列类型
- zabbix监控linux网卡流量,Zabbix结合iptables监控网络流量
- 如何优化linux服务器,手把手教你如何优化linux服务器
- easyui树拖拽排序java_easyui tree 拖拽功能并将数据返回后台保存至数据库
- css两栏式布局示例
- Java代码制作ie浏览器_[Java教程]判断IE浏览器代码实例
- php7 电子书 下载,PHP 7: Real World Application Development
- 分布式文件系统HDFS 学习指南
- Sybase数据库故障的修复方法
- CentOS桥接网卡配置
- 如何选购电风扇,一本电风扇选购攻略都在这里!
- JavaScript实现节点的增加修改删除查找
- Word2010如何隐藏去掉回车符
- 介绍一下我大二开发的游戏:地下城冒险
- 苹果手机如何找回id密码_iPhone手机ID总是忘记密码,轻松一招帮你找回,原来这么简单...
- java基于ssm开发的电视剧播放视频系统页面很漂亮哦
- python dataframe索引筛选_python-Pandas DataFrame:查找两列相等/相同的特定长度序列的索引值...
- css 单独设置左上,右上,左下,右下 圆角属性
热门文章
- Python求圆的面积和周长
- poj3104(二分判断可行性)
- 【历史上的今天】5 月 21 日:Simula 67 发布;微软推出 Xbox One;计算机先驱诞生日
- idea mybatis 常用插件
- /usr/bin/env: ‘node’: Input/output error
- npack v1.1.300 beta by NEOx/[uinc]
- 要不要考博?清华姚班助理教授写了个读博决策树
- 我为什么选择鲸交所WhaleEx?
- 学习大数据,大数据专家写给大数据分析学习者的10个理由
- 信修修 | 如何一眼辨别显示器好坏?电脑选机必看!