Python数据可视化——词云图
一、配置环境
要生成词云图,必备的插件是wordcloud。课堂上给出了两种安装插件的方法。一是通过调用命令行,输入pip3 install wordcloud进行安装。二是下载whl文件,通过pip3 install xxx.whl安装。可是这两种方法都无法成功安装。这一步耗费了非常多的时间,最终在同学的提示下,我在jupyter中直接输入了安装命令。
安装成功。
此外,还需要安装jieba分词库,对文本进行分词,才能生成词云。
二、数据准备
找到一篇报告,将其全文文本复制,另存在本地为.txt文件。需要跟python文件存在同一目录下。
三、编程部分
1.打开文件
首先import os模块、wordcloud库和matplotlib库。os模块的功能是处理文件,需要用它来打开我们刚才保存的.txt文件,这里一定要输入[encoding='utf-8']处理中文字符,否则会报错。matplotlib库用于制图。
将文件赋值为text,可以先print出来,确认文本是否有问题。
import os
from wordcloud import WordCloud
import matplotlib.pyplot as plttext=open("China145.txt","r",encoding="utf-8").read()
#print(text)
2.jieba分词
加载文本文件,分词为模式为精确模式(cut_all=False)。精确模式是指将句子最精确地切开,适合文本分析。如:今天天气,真,好
新建一个字典,赋值为tf。遍历jieba分词结果中的所有词,通过循环语句计数。将字典的值,也就是词本身放到列表中,这一步是为剔除无用数据做准备。
import jieba
jieba.load_userdict("China145.txt")
seg_list=jieba.cut(text,cut_all=False)tf={}
for seg in seg_list:if seg in tf:tf[seg]+=1else:tf[seg]=1
ci=list(tf.keys())
3.剔除无用数据
遍历分词结果列表中所有的词,满足出现次数足够多并且长度>2,且不在停词文档中的词才能够用来绘制词云图。(这里的出现次数可以视情况而定,一般使词云图中的词在50~300左右为宜)将不满足条件的词剔除。
with open("stopword.txt","r",encoding="UTF-8") as ft:stopword=ft.read()for seg in ci:if tf[seg]<20 or len(seg)<2 or seg in stopword or "-" in seg:tf.pop(seg)
4.遍历字典,将值放在前面,键放在后面,放入data列表中。用list的sort方法将词按出现次数由小到大排序,再用reverse方法倒叙,得到出现次数由大到小排序的列表。再将数字和词位置互换,存入字典中。
ci,num,data=list(tf.keys()),list(tf.values()),[]
for i in range(len(tf)):data.append((num[i],ci[i]))
data.sort()
data.reverse()
#print(data)tf_sorted={}
print(len(data),data[0],data[0][0],data[0][1])for i in range(len(data)):tf_sorted[data[i][1]]=data[i][0]print(tf_sorted)
5.生成词云
可以将词语字体、颜色、情况按喜好进行设置。然后关掉词云的坐标轴,输出并保存到本地即可。
import os
from wordcloud import WordCloud
import matplotlib.pyplot as plt
wc=WordCloud(font_path=font,width=800,height=600).generate_from_frequencies(tf)plt.imshow(wc)
plt.axis('off')
plt.show()
wc.to_file('AI2.jpg')
输出结果
Python数据可视化——词云图相关推荐
- 数据可视化——词云图
本文目的:将爬取的评论数据进行分词,然后使用词云图进行可视化操作. 使用到的工具:结巴中文分词.Wordcloud库 首先介绍一下两个工具,其中结巴中文分词是一个专门将中文句子进行分词的第三方库,当然 ...
- Python数据可视化词云展示周董的歌
马上开始了,你准备好了么 准备工作 环境:Windows + Python3.6 IDE:根据个人喜好,自行选择 模块: Matplotlib是一个 Python 的 2D数学绘图库 pip inst ...
- 数据可视化 - 词云图样式自定义
from pyecharts import options as opts from pyecharts.charts import WordCloudwords = [("花鸟市场&quo ...
- Python基于WordCloud词云图的数据可视化分析 词云图的基本使用 政府工作报告分析
Python基于WordCloud词云图的数据可视化分析 词云图的基本使用 政府工作报告分析 文章目录 1.词云图简介 2.wordcloud库的安装 3.WordCloud的主要参数说明 4.绘制词 ...
- 使用Python获取春节档电影影评,制作可视化词云图
Python获取春节档电影影评,制作可视化词云图 前言 准备工作 采集数据部分 基本思路流程 代码实战 可视化词云图 代码展示 效果展示 前言 春节电影听巳月说都还可以,我不信,我觉得还是要看看看过的 ...
- DayDayUp:寒门女孩考入北大→换角度看待表达《感谢贫穷》—关于吃苦与穷~~~Python之wordcloud词云图可视化
DayDayUp:寒门女孩考入北大→换角度看待表达<感谢贫穷>-关于吃苦与穷~~~Python之wordcloud词云图可视化 目录 博主看法-关于吃苦与穷 文本内容 寒门女孩考入北大-& ...
- python数据可视化之美源码_Python数据可视化之美-专业图
Python数据可视化之美 专业图表绘制指南 作 者:张杰 著 定 价:129 出 版 社:电子工业出版社 出版日期:2020年03月01日 页 数:303 装 帧:平装 ISBN:97871 ...
- Python数据分析初探项目 基于Python数据可视化的网易云音乐歌单分析系统 大学编程作业(TUST 天津科技大学 2022年)
Python 数据分析初探项目 基于 Python 数据可视化的网易云音乐歌单分析系统 大学编程作业(TUST 天津科技大学 2022 年) Python 数据分析初探项目 基于 Python 数据可 ...
- Python数据可视化——pyecharts学习笔记
导读:Python数据可视化的库有很多,常见的有matplotlib.pyplot.Seaborn.pyecharts等. pyecharts是一款将python与echarts相结合的数据可视化库, ...
最新文章
- Python+OpenCV检测灯光亮点
- 好记性不如烂笔杆-android学习笔记二 Acitvity lifecycle 生命周期
- vue v-model 简单使用
- 《信息学奥赛一本通》高精除以高精,求它们的商和余数。
- python异常值处理实例_利用Python进行异常值分析实例代码
- Android——DDMS简单介绍
- 我也不知道取什么标题好了!
- win10-ubuntu-软件配置-开机root无密码-风扇转速调节
- linux内核编程-内核态文件操作
- qgridlayout 滚动时固定第一行_【德国进口轴承】滚动轴承组合设计应考虑的问题...
- 计算机配件对比,基本参数 尺寸对比 接口对比
- ARM汇编:数据处理指令集:MOV、ADD、ADDS、ADC、SUB、SUBS、SBC、RSB、MUL、AND、ORR、EOR、BIC、CMP、TST、TEQ、LSL、LSR、ASR、RORV
- spring boot + netty实现匿名聊天室 web版
- 按照网络规模来分,服务器分为哪几类?
- 在vc2008中用_crtBreakAlloc调试内存泄漏
- 如何用usb电缆连接到计算机,如何使用USB串行电缆将文件从计算机传输到树莓派...
- 数字三角形 计算最大路径 动态规划
- FreeBSD安装中文字体和中文输入法
- java抓取网站数据
- 基于Android的便签设计(一)
热门文章
- JMeter 组件7:Pre Processors预处理器
- 活着就是为了改变世界,人工智能缓解气候异常的4种方式
- 看了狗屁不通文章生成器,我想起自己写过个人信息生成器
- Pearson(皮尔逊)相关系数
- JMAG.DESIGNER.16.0.WIN.LINUX.X64 马达电磁分析
- FBI教你读心术 读书笔记
- 2016iOS之UI基础视频-传智-专题视频课程
- 电子海图改正信息的计算和输入
- c语言excel存储文件格式,C语言写excel文件(csv格式)
- 用计算机寻找素数,找出1到1000所有质数(电脑流程图)