python画二维温度云图_利用python画出词云图
本文将介绍如何利用python中相应的模块画出词云图。首先给出效果图:
其中词云图中的词汇是对手机短信中的垃圾短信的统计,字体越大表示在垃圾短信中出现的频次越高。下面给出具体的步骤。
读取“垃圾短信”的csv数据
首先给出代码:
其中pandas是一个python常用的数据可视化模块。pd.read_csv函数是用来读取csv文件,data.columns是修改文件中的列的名称。
显示的结果为:
查看数据
我们对读取的80000条短信中,正常短信与垃圾短信进行统计,给出代码:
画出的效果图为:
可以看出数据库中有1/10的垃圾短信。代码中,plt.figure函数控制画图的大小,rcParams函数用来修改字体(要不然不支持中文,毕竟这不是国人开发的)。
数据清洗
首先我们选出1000条正常数据和垃圾数据(因为数据比较多,为了简化运行,我们选出2000条短信),代码为:
其中,sample函数是随机的挑选样本。运行结果:
然后我们对数据进行清洗,为什么要进行数据处理?因为我们后期用jieba库分词,而中文分词必须要求一个单词的两个汉字连在一起,不能有空格,不能有特殊符号。所以我们将数据的非汉字字符剔除掉,代码为:
其中引入两个新的库,一个是re正则表达式的库(本文不介绍正则表达式),还有一个是结巴分词库。apply函数就是对元素中每一个元素都进行后续处理,传入的是要处理的函数。
本文传入的是匿名函数。re.sub是正则表达式中的函数,用于替换语句中的词,其中参数pattern表示的是正则表达式,repl是替换成什么字符,string是输入的参数。
输出为:
画图云
最后一步就是画出图云。首先给出代码:
其中我们需要导入一个很重要的库,就是wordcloud,利用该模块,我们可以实现图云的绘画。
其中WordCloud是一个函数,用于生成词云,其中参数font_path是词云中字体的路径(在windows操作系统中字体路径一般为"C:\Windows\Fonts\***.ttf"),mask是传入绘画的图像,比如本文绘画的图像为:
background_color是设置背景颜色,fit_words函数用于传入词云的数据。绘画结果为:
疑点分析
plt.imshow(wc)使用plt模块画图,我们给出imshow函数的api文档:
传入的应该是array-like或者PIL image格式,但是我们传入的是wc(wordcloud类型的数据,而wordcloud类型是属于Wordcloud模块),为什么可以实现画图效果呢?
只有一种解释,Wordcloud模块中的wordcloud类型数据是属于PIL image类型的数据(笔者自己这么认为的,没有看底层,欢迎指出错误)
总结
本文利用python画出垃圾短信的词云图。希望对你的学习有所帮助。
python画二维温度云图_利用python画出词云图相关推荐
- python画二维折线图_利用python画折线图
# encoding=utf-8 import matplotlib.pyplot as plt from pylab import * #支持中文 mpl.rcParams['font.sans-s ...
- python画二维数组散点图_基于python二维数组及画图的实例详解
基于python二维数组及画图的实例详解 下面小编就为大家分享一篇基于python 二维数组及画图的实例详解,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 1.二维数组取值 注:不管 ...
- python生成二维码教程_使用Python生成个性二维码
任务目的 这一步会介绍通过Python中的MyQR包实现生成二维码的操作,包括生成普通二维码.带有静态图和动态图的二维码,同时也会对MyQR生成二维码的常用参数进行介绍说明. 任务步骤注:CVM适合用 ...
- python画二维温度云图_一种画二维温度场彩色云图的新方法
一种画二维温度场彩色云图的新方法 刘永军 ; 李宏男 [摘 要] 介绍一种画二维温度场彩色云图的新方法 , 其特点是算法简单 , 结果精确 , 易于编程 . [期刊名称] <图学学报> [ ...
- python 二维数组心得_基于python 二维数组及画图的实例详解
python中如何使用二维数组 在Python中,一个像这样的多维表格可以通过"序列的序列"实现.一个表格是行的序列.每一行又是独立单元格的序列.这类似于小编们使用的数学记号,在数 ...
- python画二维温度云图_“绘图,让化学生动起来”:Python-matplotlib绘图(全二维气相色谱图分析专题)...
作者简介:85后一名分析化学工作者及科学爱好者,深爱着北京的老北京人,爱好运动,科学,旅行,本文作者的个人微信公众号<科学是什么东东>,欢迎关注! 作者的本职工作为分析化学,因此,在这一专 ...
- python画二维温度云图_python定制后处理云图
用后处理软件处理的云图会出现这样或那样的不满意,其实我们可以将求解数据导出以后,借助python定制云图. 我们以fluent为例 求解完成之后,我们将我们需要做云图的物理量以ASCII导出 如下的p ...
- 用python可以画的可爱的图形_利用Python绘制诱人的桑基图
作者:小z 来源:数据不吹牛 大家好,我是小z~ 最近,不止一次收到群里小伙伴的截图追问: "这个图叫什么???" "这个图真好看!!!怎么画啊?" 小z本没有 ...
- python 二维强度图_荐 python数据分析matplotlib库使用之二维图形绘制
本篇内容会在后期不定时更新 什么是matplotlib matplotlib是最流行的python底层绘图库,主要做数据可视化图表. 为什么要学习matplotlib 能将数据进行可视化,更直观的呈现 ...
最新文章
- 从信息瓶颈理论一瞥机器学习的“大一统理论”
- C++阶段01笔记03【运算符(算术运算符、赋值运算符、比较运算符、逻辑运算符)】
- 第一个linux桌面,Ubuntu 4.10 “Warty Warthog”:回顾第一个Ubuntu Linux桌面
- 使用Jenkins,GitHub和Docker的最先进的持续集成和部署管道
- go语言 expected ; found a
- The content of elements must consist of well-formed character data or markup
- BZOJ1095: [ZJOI2007]Hide 捉迷藏(动态点分治)
- [总结]SqlServer中如何实现自动备份数据!
- 力扣628. 三个数的最大乘积
- linux 如何选择新的内核,如何更新内核??__boot_内核_vmlinuz_linux_System__169IT.COM
- 【安装库】matlab2020b安装及百度网盘提速
- 非参数统计单样本非参数检验之符号检验
- 研究生英语单词学习——Learning English
- 信息系统项目管理师---综合类计算
- bios设置raid启动模式Linux,RAID BIOS检测硬盘以及设置RAID模式
- Symbol数据类型
- Branches ‘develop‘ and ‘origin/develop‘ have diverged. Fatal: And branch ‘develop‘ may be fast-forwa
- 怎么换头像啊。。。。。
- RAD Studio破解补丁合集(2018.12.25)
- 所有操作系统下载地址Windows Redhat CentOS