原标题:自学Python笔记:打造我的第一个词云

两会词云

“词云”是对文本中出现频率较高的“关键词”予以视觉上的突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本信息,使浏览网页者只要一眼扫过文本就可以领略文本的主旨。

作为教育工作者,可以利用词云工具,提供给阅读者整个信息的新重点,揭示关键概念并使用新的模式,以加强学习。词云有可能成为最新的计算机辅助学习的新形式。尤其在外语教学中适当地运用词云手段可以改善教学效果,提高教学质量,对培养学生多方面的能力和提高教师素质也有很多益处。

网上有很多的绘制词云工具,如果用Python绘制词云,主要用到的是wordcloud库。

安装很简单,只要在命令行模式下输入下面指令即可完成安装。

pip install wordcloud

wordcloud安装时如果你是Python3.6版本需要先安装Visual C++ 2017 redistributable packages,请提前安装好。

Visual C++ 2017

英文词云

从字面看就知道词云分析的对象是文本,是对文本数据的“关键词”进行提取分析,因为wordcloud对中文支持不好,我们先以英文文本为例。

今年国产电影战狼2够火,先到维基百科上找到了这部电影的词条“Wolf Warrior 2”。(精简了一下原文)

Wolf Warrior 2 is a 2017 Chinese action film directed by Wu Jing, who also starred in the lead role. The film co-stars Celina Jade, Frank Grillo, Hans Zhang, and Wu Gang. The film is a sequel to 2015's Wolf Warrior.The film tells a story of a loose cannon Chinese soldier named Leng Feng who takes on special missions around the world. In this sequel, he finds himself in an African country protecting medical aid workers from local rebels and vicious arms dealers. received general praise for its patriotic plot, special effects, action sequences and the cast's performances. It was a massive commercial success and has become the highest-grossing Chinese film ever released. The film broke numerous box office records, including the biggest single-day gross for a Chinese film as well as the fastest film to cross RMB 2 billion, 3 billion, 4 billion and 5 billion box office marks.

首先把上面文字存成 “wolf2.txt”,保存进程序目录,同时建立“ciyun.py”的脚本程序文件。

import matplotlib.pyplot as plt #需要绘图显示,调用了matplotlib库

from wordcloud import WordCloud

mytext = open('wolf2.txt','r').read() #读取文件

wordcloud = WordCloud().generate(mytext)

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

在提示符下运行“python ciyun.py”就可以看到本文第一张图了,通过这张词云图,我们可以看到不同单词和词组出现的频率高低差别,高频词的字体明显更大,而且颜色也很醒目。

Wolf Warrior 2

WordCloud还可以设置生成图像的一些属性,比如下面将换成白色背景,尺寸为800*600。当然还可以增加遮罩。

wordcloud = WordCloud(background_color="white",width=800, height=600, margin=2).generate(mytext)

定义部分属性

我们进一步修改代码,首先建立一张透明背景的PNG图片,命名为“mask.png”并与“ciyun.py”保存在一起。图片的作用就是让你随心所欲的生成自己想要的形状。

mask.png

添加和修改代码如下:

from scipy.misc import imread

maskpic = imread("mask.png")

wordcloud=WordCloud(background_color="white",mask=maskpic ,width=1000, height=860, margin=2).generate(mytext)

mask后

中文词云

上面是对英文文本的处理,wordcloud对于中文的分词支持不是特别好,所以需要我们手动分词,大神们已经为我们准备了中文分词库,jieba就是一个优秀的中文分词工具,功能强大并且使用简便。

同理,我们选取一篇文章,是关于人工智能的,并保存为“zh.txt”。

人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。

人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智能带来的科技产品,将会是人类智慧的“容器”。人工智能可以对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。

人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。

然后编写下面的代码,为了正常显示中文添加了一个“font_path="MSYH.TTF"”参数,当然同时你要把字库文件MSYH.TTF也要放进程序目录。这个文件可以在系统font目录下找到。

import matplotlib.pyplot as plt

from wordcloud import WordCloud

from scipy.misc import imread

import jieba

mytext = open('zh.txt','r').read()

mytext = " ".join(jieba.cut(mytext))

maskpic = imread("mask.png")

wordcloud = WordCloud(background_color="white",mask=maskpic,font_path="MSYH.TTF",width=1000, height=860, margin=2).generate(mytext)

plt.imshow(wordcloud, interpolation='bilinear')

plt.axis("off")

plt.show()

中文词云

今天仅仅是介绍了词云的冰山一角,可以简单的做自己的词云,wordcloud库也不仅仅这么简单的应用,希望感兴趣的朋友赶紧操练起来。返回搜狐,查看更多

责任编辑:

python中词云pic_path是什么_自学Python笔记:打造我的第一个词云相关推荐

  1. python微信公众号翻译功能_自学Python笔记:给微信公众号搭建“成绩查询”功能...

    原标题:自学Python笔记:给微信公众号搭建"成绩查询"功能 期末考试 临近年末,全国各地都在上演一场大戏<期末考试>,考完试无论什么样的结果总想尽快看到自己一个学期 ...

  2. 自学python三个月能做什么兼职_自学Python能干些什么副业

    自学Python能干的副业:1.兼职处理数据,Python在搜集整理分析数据的过程中更加便捷:2.兼职查询资料,很容易通过几行代码在网络上爬取各种各样的资源:3.兼职P图,通过Python可以利用相关 ...

  3. python安装需要什么电脑配置_自学python用什么配置电脑?

    Python不像java或者Android那样,需要下载很大的开发工具包,Python一般的配置基本上都能满足.如果要学习其他的,最好是越高越好了. 一般配置:i5+8G 内存+Intel处理器,如果 ...

  4. 学而思网校编程python的推出时间是什么时候_自学Python找不到工作?吃鸡半小时,编程五分钟,劝你还是放弃吧...

    Python发展可以说是如日中天,更多的人选择学习Python,也更多的人开始关注它,从这些关注度来看,我发现关注度最高的还是Python的就业前景是怎么样的,毕竟大家学习Python都是为了以后能有 ...

  5. python爬虫实战技巧保盈_自学Python十 爬虫实战三(美女福利续)

    1 #-*- coding: utf-8 -*- 2 from __future__ importunicode_literals3 from HttpClient importHttpClient4 ...

  6. python对土木工程有需要吗_自学python需要注意的问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Python确实容易上手,对初学者的门槛很低. 但是对于小白真正的门槛在于系统知识,这就和用什么语言完全没有任何关系了. 你不能让一个才会写print函数 ...

  7. python 词云手把手_手把手教你用python制作属于你的第一个词云

    相信很多人在网上,或者是在一些报告或者ppt上,都看到过类似这种图片 你可能会好奇它是怎么做出来的,如果你会ps,你可能会觉得,这是用ps一步一步制作出来的.是的没错,一开始我也是坚定不移的这么认为. ...

  8. 自学python困难吗_自学Python会有什么困难?老男孩自学python编程

    学习Python开发的过程中,不少自学Python的小伙伴失败了,Python一直以来都是深受程序员喜爱的编程语言,那么自学Python编程为什么难?Python开发要怎样学呢?其实自学的大问题就是难 ...

  9. python编程自学能学会吗-自学Python会有什么困难?老男孩自学python编程

    学习Python开发的过程中,不少自学Python的小伙伴失败了,Python一直以来都是深受程序员喜爱的编程语言,那么自学Python编程为什么难?Python开发要怎样学呢?其实自学的大问题就是难 ...

最新文章

  1. 好用到爆的 Java 技巧
  2. Python使用matplotlib函数subplot可视化多个不同颜色的折线图、为指定的子图添加图例信息(legend)
  3. poj 2104: K-th Number 【主席树】
  4. 如何在Git中保存用户名和密码?
  5. Druid 连接池 JDBCUtils 工具类的使用
  6. BuildIt: Visual Studio .NET 的自动生成工具
  7. 自我辩证之计划是否该坚持?
  8. flutter --- Windows下环境配置
  9. 机器学习降维算法二:LDA(Linear Discriminant Analysis)
  10. h5页面保存img_如何设计H5编辑器中的模版库并实现自动生成封面图
  11. 解决:用PivotGridControl 与 chartControl 配合使用,Series最大只显示10条
  12. NXP K60使用IAR烧录教程
  13. 如何下载csdn的文章并保存成pdf格式呢?并实现某个博主的全部博文下载?
  14. 电子计算机机房防雷装置,网络机房防雷方案
  15. [NOI2008]糖果雨
  16. jQuery实现购物车功能(小计、总计)
  17. Excel数据分析(七)第六章数据透视表
  18. 国外开源电子商务平台
  19. 20个超炫的HTML5 /CSS3免费网页设计模板
  20. 韦东山Linux问题笔记

热门文章

  1. java总结 第四章 认识成员函数
  2. 我该选择留下,还是离开?
  3. 机器人 瓷砖墙面清洗_墙面瓷片很脏了,有什么办法清洗呀好烦哦...
  4. 人工智能 : 第三篇”脑机接口“
  5. Mysql详细学习指南(超详细)
  6. 蚂蚁双11的这群筑梦师
  7. 一个北漂程序员,告诉你什么是有效跳槽
  8. 桌面计算机回收站打不开,b8,手把手教你电脑回收站打不开怎么解决
  9. 数据解析——BeautifulSoup
  10. 2014年1月1日 新的开始