原文地址: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生成标签云/词云相关推荐

  1. python程序创建词云 中国地图_就这么简单!使用Python生成漂亮的词云

    原标题:就这么简单!使用Python生成漂亮的词云 作者:Linux迷 链接:https://www.linuxmi.com 词云是一种数据可视化技术,用于表示文本数据,其中每个单词的大小表示其出现的 ...

  2. 利用Python生成漂亮的词云,云的形状由你定

    前言 在大数据时代,你竟然会在网上看到的词云,例如这样的. 看到之后你是什么感觉?想不想自己做一个? 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里 ...

  3. Python生成漂亮的词云,云的形状由你定

    前言 在大数据时代,你竟然会在网上看到的词云,例如这样的. 看到之后你是什么感觉?想不想自己做一个? 如果你的答案是正确的,那就不要拖延了,现在我们就开始,做一个词云分析图,Python是一个当下很流 ...

  4. python爬取网易云音乐生成王力宏歌曲词云

    python爬取网易云音乐生成王力宏歌曲词云 # -*- coding:utf-8 -*- # 网易云音乐,通过歌手id生成词云 import requests import sys,re,os fr ...

  5. Python编程:实现词云生成(附详细源码)

    Python编程:实现词云生成(附详细源码) 词云是一种数据可视化的方式,它可以用来展示某个主题下的主要关键词汇.在Python中,我们可以使用 wordcloud 库来实现词云的生成.本文将带您一步 ...

  6. python学习笔记---中文词云

    python学习笔记–中文词云 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 发现词云的展示还挺有意思的,比较多的应用场景是给用户打标签,社交软件应用较多.今天随便找了一些文字电影 ...

  7. python歌词分析_Python 词云分析周杰伦新歌《说好不哭》

    周杰伦难得出新歌 ,最近终于推出了单曲<说好不哭>,然后直接把QQ音乐服务器干崩了,天王的实力可见一斑,QQ音乐还把这个当作 今天过年 看我公众号头像就知道是杰伦粉了 ,高中的时候开始喜欢 ...

  8. 利用python做微信聊天记录词云分析——记录美好回忆

    目录 1 概述 2 数据准备 2.1 安卓设备 2.1.1 Root手机,安装Root Explorer 2.1.2 用Root Explorer将聊天记录的数据文件导出并存入电脑 2.1.3 对En ...

  9. 使用爬虫抓取网易云音乐热门评论生成好玩的词云

    互联网爬虫是一个很有意思的技术,借由爬虫,我们可以做到很多好玩的事情--这其中就包括爬取评论. 词云就是个更好玩的技术,通过技术方法分析词语出现频率,生成可视化的图形,将文字内容用图形呈现,想想就很意 ...

  10. WordCloud生成卡卡西忍术词云

    前言 本想果断的说,卡卡西是火影里面最帅的人物.但是出于对大家的尊重,我把这句话改成:"卡卡西是动漫界最帅的人物",不接受任何反驳. 一.项目介绍 在介绍之前,先给大家来个用香克斯 ...

最新文章

  1. android 键盘右下角回车改为搜索
  2. 求职者提问的问题面试官不会_如何通过三个简单的问题就不会陷入求职困境
  3. Python组合数据类型之序列类型
  4. zabbix监控linux网卡流量,Zabbix结合iptables监控网络流量
  5. 如何优化linux服务器,手把手教你如何优化linux服务器
  6. easyui树拖拽排序java_easyui tree 拖拽功能并将数据返回后台保存至数据库
  7. css两栏式布局示例
  8. Java代码制作ie浏览器_[Java教程]判断IE浏览器代码实例
  9. php7 电子书 下载,PHP 7: Real World Application Development
  10. 分布式文件系统HDFS 学习指南
  11. Sybase数据库故障的修复方法
  12. CentOS桥接网卡配置
  13. 如何选购电风扇,一本电风扇选购攻略都在这里!
  14. JavaScript实现节点的增加修改删除查找
  15. Word2010如何隐藏去掉回车符
  16. 介绍一下我大二开发的游戏:地下城冒险
  17. 苹果手机如何找回id密码_iPhone手机ID总是忘记密码,轻松一招帮你找回,原来这么简单...
  18. java基于ssm开发的电视剧播放视频系统页面很漂亮哦
  19. python dataframe索引筛选_python-Pandas DataFrame:查找两列相等/相同的特定长度序列的索引值...
  20. css 单独设置左上,右上,左下,右下 圆角属性

热门文章

  1. Python求圆的面积和周长
  2. poj3104(二分判断可行性)
  3. 【历史上的今天】5 月 21 日:Simula 67 发布;微软推出 Xbox One;计算机先驱诞生日
  4. idea mybatis 常用插件
  5. /usr/bin/env: ‘node’: Input/output error
  6. npack v1.1.300 beta by NEOx/[uinc]
  7. 要不要考博?清华姚班助理教授写了个读博决策树
  8. 我为什么选择鲸交所WhaleEx?
  9. 学习大数据,大数据专家写给大数据分析学习者的10个理由
  10. 信修修 | 如何一眼辨别显示器好坏?电脑选机必看!