新技能 get —— 使用 python 生成词云
来源:互联网 发布:sql server 系统时间 编辑:程序博客网 时间:2024/06/11 03:07
什么是词云(word cloud)呢?词云又叫文字云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思。
0. 常见词云生成工具
从技术上来看,词云是一种有趣的数据可视化方法,互联网上有很多的现成的工具:
- Wordle是一个用于从文本生成词云图而提供的游戏工具
- Tagxedo 可以在线制作个性化词云
- Tagul 是一个 Web 服务,同样可以创建华丽的词云
- Tagcrowd 还可以输入web的url,直接生成某个网页的词云
……
1. 库的准备
- jieba
- matplotlib
- wordcloud
2. 10 行代代码
#coding: UTF-8import jiebafrom wordcloud import WordCloudimport matplotlib.pyplot as plttext_from_file = open('文件.txt', 'rb').read()wordlist = jieba.cut(text_from_file, cut_all=True) # 首先使用 jieba 中文分词工具进行分词wordlist_space_split = ' '.join(wordlist)my_wordcloud = WordCloud().generate(wordlist_space_split)plt.imshow(my_wordcloud) # 以图片的形式显示词云plt.axis('off') # 关闭坐标轴plt.show()
刚开始运行这十行代码的时候,只显式了若干彩色的小矩形框,中文词语显式不出来,以为是万恶的 UTF8 问题,debug一下,发现 print 结巴分词的结果是可以显示中文的,那就是 wordcloud 生成词语的字体库问题了。开源的好处来了,直接进入wordcloud.py 的源码,找字体库相关的代码:
FONT_PATH = os.environ.get("FONT_PATH", os.path.join(os.path.dirname(__file__), "DroidSansMono.ttf"))
wordcloud 默认使用了DroidSansMono.ttf 字体库,改一下换成一个支持中文的ttf 字库(比如simsun.ttc,常规-宋体), 重新运行一下这十行代码,就可以了。
0 0
- 新技能 get —— 使用 python 生成词云
- 新技能 get —— Python 断点续传下载文件
- 新技能——隐文术Get
- Get到的新技能——记录
- 新技能 get —— 五笔打字
- 新技能get——springMVC处理XSS攻击
- B\S备忘录11——新技能AOP get√
- 新技能 get —— 如何校验 md5(windows)
- 新技能get
- 新技能get
- Get新技能
- SPOON使用简述(ETL)---加班get到新技能
- [每天get点新技能]搜商——冲出互联网的迷宫
- [每天get点新技能]搜商——More Query Modifiers
- [每天get点新技能]搜商——Google Hacking窥探互联网
- [每天get点新技能]搜商——搜索发展简史(1)
- [每天get点新技能]搜商——从A到Z亚马逊A9引擎
- [每天get点新技能]搜商——寻找“免费”的资源
- mini2440 SD卡烧写系统
- 内存字节对齐
- 第一个Spring MVC应用
- linux下安装配置zookeeper
- 代码混淆
- 新技能 get —— 使用 python 生成词云
- mysql_Innodb的undo_log和redo_log
- 把汉字转换成拼音的util
- JS拖拽目标
- 实验吧安全杂项WP(五)
- 常用正则表达式
- 正则表达式
- Java程序员的面试经历和题库(转)
- JDBC驱动oci和thin区别