千家信息网

Python怎么生成Wordcloud词云

发表于:2024-11-17 作者:千家信息网编辑
千家信息网最后更新 2024年11月17日,这篇文章主要讲解了"Python怎么生成Wordcloud词云",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python怎么生成Wordcloud词云
千家信息网最后更新 2024年11月17日Python怎么生成Wordcloud词云

这篇文章主要讲解了"Python怎么生成Wordcloud词云",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python怎么生成Wordcloud词云"吧!

当然最直接的是 pip

pip install wordcloud

但很多同学会发现直接 pip 是会报错的,所以这里提供第二种安装方式:

下载 whl 手动安装包:http://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud

静静等待页面加载完成,然后选择适合自己 Pythonwordcloud 版本,最后运行以下命令。filepath 替换为你的安装文件完整路径。

pip install filepath\wordcloud-1.2.1-cp35-cp35m-win_amd64.whl

wordcloud 在安装过程中会自动安装其依赖的库。

基本的用法

我们读入一本英文小说,取其中的词汇生成一张词云图

  1. # 导入 wordcloud 模块和 matplotlib 模块

  2. from wordcloud import WordCloud

  3. import matplotlib.pyplot as plt

  4. # 读入一个txt文件

  5. text = open('Jane Eyre.txt','r').read()

  6. # 生成词云

  7. wordcloud = WordCloud().generate(text)

  8. # 显示词云图片

  9. plt.imshow(wordcloud)

  10. plt.axis('off')

  11. plt.show()

  12. # 保存图片

  13. wordcloud.to_file('test.jpg')

结果如图所示

运行脚本之后就可以看到生成的图片了,是不是很简单。本文主要讲 wordcloud。代码中涉及到的 matplotlib 就不做更详细解释。

除了直接读入文本生成词云,也可以使用字典格式的词频作为输入

  1. # 读入一组词频字典文件

  2. text_dict = {

  3. 'you': 2993,

  4. 'and': 6625,

  5. 'in': 2767,

  6. 'was': 2525,

  7. 'the': 7845,

  8. }

  9. wordcloud = WordCloud().generate_from_frequencies(text_dict)

还可以将词云填充到指定的形状之中。为达到填充指定形状的效果,需要使用 png 格式的图片。

  1. # 读入图片

  2. from scipy.misc import imread

  3. bg_pic = imread('Anne_Hathaway.png')

  4. # 配置词云参数

  5. wc = WordCloud(

  6. # 设置字体

  7. font_path = 'BeaverScratches.ttf',

  8. # 设置背景色

  9. background_color='white',

  10. # 允许最大词汇

  11. max_words=200,

  12. # 词云形状

  13. mask=bg_pic,

  14. # 最大号字体

  15. max_font_size=100,

  16. )

  17. # 生成词云

  18. wc.generate(text)

  19. # 保存图片

  20. wc.to_file('word.jpg')

还可以结合 jieba分词,实现用中文填充的词云图(如果不通过分词,无法直接生成正确的中文词云)。使用中文填充时一定得指定中文的字体,否则会出现乱码。如果报错找不到字体,就复制一个中文字体文件放在代码目录下。

  1. #-*- coding:utf-8 -*-

  2. from scipy.misc import imread

  3. import matplotlib.pyplot as plt

  4. from wordcloud import WordCloud

  5. import jieba

  6. from collections import Counter

  7. # 读入 西游记 txt 文件,windows 下过滤编码错误

  8. text = open('西游记.txt',encoding='utf-8',errors='ignore').read()

  9. # 使用 jieba 分词

  10. text_jieba = list(jieba.cut(text))

  11. # 使用 counter 做词频统计,选取出现频率前 100 的词汇

  12. c = Counter(text_jieba)

  13. common_c = c.most_common(100)

  14. # 读入图片

  15. bg_pic = imread('Anne_Hathaway.png')

  16. # 配置词云参数

  17. wc = WordCloud(

  18. # 设置字体

  19. font_path = '李旭科书法1.4.ttf',

  20. # 设置背景色

  21. background_color='white',

  22. # 允许最大词汇

  23. max_words=200,

  24. # 词云形状

  25. mask=bg_pic,

  26. # 最大号字体

  27. max_font_size=100,

  28. )

  29. # 生成词云

  30. wc.generate_from_frequencies(dict(common_c))

  31. # 生成图片并显示

  32. plt.figure()

  33. plt.imshow(wc)

  34. plt.axis('off')

  35. plt.show()

  36. # 保存图片

  37. wc.to_file('anne.jpg')

感谢各位的阅读,以上就是"Python怎么生成Wordcloud词云"的内容了,经过本文的学习后,相信大家对Python怎么生成Wordcloud词云这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

生成 图片 字体 文件 中文 最大 形状 词汇 词频 学习 云图 代码 内容 参数 字典 格式 模块 背景 西游 西游记 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全和信息化 自查 民政 迷你sql连接服务器失败 中国移动使用的服务器 net软件开发技术路线 云服务器运营管理唯一 打开sql服务器配置管理 中国长城是不是网络安全概念 网络安全阅历卡2000字 荔湾靠谱的网络安全服务 戴尔服务器进bios虚拟化 大唐集团软件开发公司有哪些 零基础学哪个软件开发哪个好 公安部网络安全许建卓 三个笛卡尔积怎么画数据库 lol服务器不稳定吗 网络安全五年级内容 环球互联网科技社 网络安全主题画一等奖五年级 网络技术栈是什么 校园网络安全与防范措施 网络安全金融能源电力 初一网络安全手抄报图片漂亮 上海语音网络技术分类标准 河北网络技术服务清单 更新苹果id设置服务器超时 计算机网络技术基础学习心得 并发量上万的服务器配置 软件开发个人营业执照 sql数据库迁移 互联网软件开发工程师工资薪酬
0