有机会介绍一些有趣的项目,向更多人甚至是非技术人员推广Python和人工智能的东西还是蛮有意义的。话不多说,本文将介绍如何将你喜欢的文章或者歌词做一个炫丽的词云图片。

什么是词云呢?简单来说就是,将提供的一段文本,根据关键词的出现频率而生成的一幅图像,人们只要扫一眼就能够明白文章主旨。今天我们用python来实现这样一个项目。如果成功,生成的结果会如下所示

生成中文词云的PYTHON步骤

需要你的电脑安装Python 接着利用pip工具安装需要的jieba、wordcloud、PIL模块

1.安装依赖

$ pip install jieba

$ pip install wordcloud

$ pip install PIL

2.添加想要用来生成文本的文章

小编蹭一波最近比较火的电视剧沉香蜜蜜烬如霜的热度,用主题曲歌词制作了一个文本,放在data目录下。Ok,DJ drop the beat

回忆辗转来回 痛不过这心扉

愿只愿余生无悔 随花香远飞

一壶清酒 一身尘灰

一念来回度余生无悔

一场春秋 生生灭灭 浮华是非

待花开之时再醉一回

不愿染是与非 怎料事与愿违

心中的花枯萎 时光它去不回

回忆辗转来回 痛不过这心扉

3.选择生成词云的形状

Hold,现在要找一张图片,用它来定义你最后生成的词云形状。ok,我找来了一张打碟的DJ的图片放在根目录下。

4.代码部分

a)用jieba成词和权重的字典

def tokenize_content(content):

jieba.analyse.set_stop_words("data/stop_words.txt")

tags = jieba.analyse.extract_tags(content, topK=50, withWeight=True)

word_tokens_rank = dict()

for tag in tags:

word_tokens_rank[tag[0]] = tag[1]

return word_tokens_rank

第一步 还是去掉一些停用词,例如口语词汇或者意义不大的词,停用词可以自定义,在data目录下的stop_words.txt中。

第二步 按照权重抽取前50个词,并转换成词典的形式。

b)用上面的生成的字典,传入word_cloud生成最后的效果

def generate_wordcloud(tags, mask):

word_cloud = WordCloud(width=512, height=512, random_state=10, background_color='white', font_path=font,stopwords=STOPWORDS, mask=mask)

word_cloud.generate_from_frequencies(tags)

plt.figure(figsize=(10, 8), facecolor='white', edgecolor='blue')

plt.imshow(word_cloud)

plt.axis('off')

plt.tight_layout(pad=0)

plt.show()

注意如果使用的是苹果电脑,macOSX系统。需要添加

import matplotlib

matplotlib.use('TkAgg')

注意的事项:

1:注意如果使用的是苹果电脑,macOSX系统。需要在引包的时候添加

import matplotlib

matplotlib.use('TkAgg')

2:如果是windows系统中,需要找到具体的中文字体,并定义下中文字体路径,例如如下。

font = r'C:\Windows\Fonts\simhei.ttf'

结论

感谢您花时间阅读这篇文章。希望这样有趣的项目,能让你对编程或者Pyhon产生更多的兴趣。

特别感谢

应往期文章(如下)的网友留言,由王腾宇先生提供此《如何在Python中生成任何形状的词云》的中文版,特此感谢分享。

关于图书

《深度学习之TensorFlow:入门、原理与进阶实战》和《Python带我起飞——入门、进阶、商业实战》两本图书是代码医生团队精心编著的 AI入门与提高的精品图书。配套资源丰富:配套视频、QQ读者群、实例源码、 配套论坛:http://bbs.aianaconda.com。更多请见:aianaconda.com

点击“阅读原文”配套图书资源

python制作词云时出现figure1 figure2_「中文版」如何在Python中生成任何形状的词云...相关推荐

  1. python词云自定义形状_如何在Python中生成任何形状的词云

    作者 | Julia Kho 编辑| 代码医生团队 在本文中,我们将探讨如何在python中以您想要的任何形状生成文字云.我们将通过一个示例来说明如何在房屋的自定义形状中创建简单的文字云,如上图所示. ...

  2. 知识卡片 生成特定形状的词云

    在学会用Python简单生成词云后,我们来了解特定形状的词云如何生成. 美丽优雅的Cinderella公主是如何出现的呢? 上述词云效果使用了imageio库. imageio的含义为image in ...

  3. python制作词云时出现figure1 figure2_用Python生成词云

    词云是一种数据可视化技术,用于表示文本数据,其中每个单词的大小表示其出现的频率或重要性. 可以使用词云突出显示重要的文本数据点. 词云被广泛用于分析来自社交网络网站的数据. 为了在Python中生成词 ...

  4. 数据可视化之利用Python制作词云图

    制作词云图 一.词云图介绍 二.wordcloud方法 二. stylecloud方法 一.词云图介绍 词云图可以看作是文本数据的视觉表示,由词汇组成类似云的彩色图形.相对其它诸多用来显示数值数据的图 ...

  5. Python制作词云视频(使用B站视频及弹幕文本)

    Python制作词云视频-目录 使用到的第三方库 项目思路和代码流程 B站弹幕爬取 思路 实现 参考代码 视频下载 思路 参考命令 视频.音频剪辑和音频提取 思路 参考代码 视频帧提取 思路 参考代码 ...

  6. plt图片输出 python_利用Python制作词云,wordcloud神器你值得拥有

    相信许多人都看到过下面这样的词云图,词云图是一种很好的可视化工具,其作用主要是为了文本数据的视觉表示,既酷炫又能突出重点. 关于词云图的制作,网上能够搜集到很多的教程,许多都是利用了专用的工具,这些工 ...

  7. python 只去除英文_如何使用 Python 制作词云(Word Cloud)-英文词云篇

    wordcloud 安装报错与解决 虽然网络上也有各种工具可以一键生成词云,但是使用Python制作词云感觉是一件很酷的事情.作为一个 Python 小白,使用 Python 的过程并不那么轻松.比如 ...

  8. 利用python制作漂亮的词云图_利用python制作词云,wordcloud神器你值得拥有

    相信许多人都看到过下面这样的词云图,词云图是一种很好的可视化工具,其作用主要是为了文本数据的视觉表示,既酷炫又能突出重点. 关于词云图的制作,网上能够搜集到很多的教程,许多都是利用了专用的工具,这些工 ...

  9. [Python]Python制作词图云

    Python制作词图云 1.在cmd安装三个库 pip install jiebapip install matplotlibpip install wordcloud 在PyCharm安装库,按Fi ...

最新文章

  1. 深度学习(十四)基于CNN的性别、年龄识别
  2. 关于uWSGI服务器的安装和启动(一)
  3. pycharm提醒:PEP 8: invalid escape sequence xx 解决办法 (转义序列无效,需改成双反斜杠\\)
  4. QString之arg用法
  5. CentOS安装PPTP ×××
  6. 邮件发送代码--网易服务器代理
  7. 计算机网络的资源共享功能包,计算机网络的资源共享功能包括
  8. javascript 调用C++函数
  9. 【团队博客】软件项目:上海海洋大学图书馆座位查找系统
  10. padding不会撑开盒子的情况
  11. scratch学习_和 Vicky 一起学习 Scratch 系列之十三 — 作曲
  12. 偶然发现,Javascript中双重否定的写法
  13. 2019云渲未来·CG产业峰会落幕,云云众生互联无界
  14. 下列有关计算机语言的叙述中,下列关于计算机语言的叙述中,正确的是( )...
  15. uniapp引用scroll-view拉到画面最底端出现报错
  16. ACTIVEPERL 5.10无法ppm安装
  17. ORACLE 导出数据csv文件,数字显示科学计数法
  18. Knime Analytics Platform
  19. 网络信号是数字信号还是模拟信号
  20. 安全的发展趋势-物联网安全参考模型

热门文章

  1. Matlab中randint()、rand()与randi()函数
  2. Android FileProvider应用
  3. CSS圆角边框和阴影
  4. 北京理工大学-操作系统原理 第2章作业2
  5. 利用SD的插件从文本或者图片创建3D模型
  6. jquery 滚轮插件 jquery.mousewheel.js
  7. [论文翻译]RetinaFace: Single-stage Dense Face Localisation in the Wild
  8. 考研数学-高等数学-曲面积分
  9. echarts使用技巧(1)echarts的图表自适应resize问题、单选、缩放等
  10. 一秒就被盗走密码,Chrome的安全措施就是摆设