需要环境:【jieba、wordcloud、matplotlib】

小说资料请自己去下载,或者找你想解析的小说即可。我这里爬取的【时光之穿越一千年】

我放在了项目路径下:

解析代码:

import jieba
import os
from wordcloud import WordCloud
import matplotlib.pyplot as pltpath = os.getcwd()#获取当前路径listDir=os.listdir(path)#获取当前目录下的所有内容listInfo=""
for x in listDir:if ".txt" in x:#判断是不是以.txt为后缀的文件file=open(x,"r",encoding="utf-8")#用utf-8的格式打开listInfo+=file.read()#读取全部内容file.close()words = jieba.lcut(listInfo)# 使用精确模式对文本进行分词
counts = {}# 通过键值对的形式存储词语及其出现的次数
#统计词频
for word in words:if len(word) == 1: # 单个词语不计算在内continueelse:counts[word] = counts.get(word, 0) + 1 # 遍历所有词语,每出现一次其对应的值加 1
#注解:dict.get(word,0)当能查询到相匹配的字典时,就会显示相应key对应的value,如果不能的话,就会显示后面的这个参数#有些不重要的词语但出现次数较多,可以通过构建排除词库excludes来删除
text=' '.join(words)
excludes = {'一个','我们','你们','不可','知道','这里','却说','自己','这样','怎么','不是', '不知','这个','不能','如此'}
#删除不重要的词语
for exword in excludes:del(counts[exword])items = list(counts.items())
items.sort(key=lambda x: x[1], reverse=True) # 根据词语出现的次数进行从大到小排序#输出统计结果
for i in range(10):word, count = items[i]print("{0:<5}{1:>5}".format(word, count))#绘图
wc=WordCloud(background_color='white',# 设置背景颜色font_path='msyh.ttc',# 若是有中文的话,这句代码必须添加,不然会出现方框,不出现汉字  scale=2, #按照比例进行放大画布,如设置为2,则长和宽都是原来画布的1.5倍max_words=100,# 设置最大现实的字数  max_font_size=80,# 设置字体最大值  stopwords=excludes)# 设置停用词
wc.generate(text)
# 显示词云图
plt.imshow(wc)
plt.axis('off')
plt.show()
wc.to_file(r'词频统计.jpg')

2、执行效果:

如果有不需要的此可以在【excludes】中过滤掉。

希望能对大家了解文字有一定的帮助。

【时光之穿越一千年】python全文字频解析【jieba】【matplotlib构图】案例相关推荐

  1. Python图形之-tkinter与matplotlib结合案例

    使用matplotlib绘制图像,并显示到thinter已有的画布中,如何进行两个包的连接,具体案例如下: 1 import matplotlib 2 matplotlib.use('TkAgg') ...

  2. 曝肝三天,两千行Python代码,制作B站视频下载工具(附源码)

    曝肝三天,两千行Python代码,制作B站视频下载工具(附源码) 文章目录 一.准备工作 二.预览 1.启动 2.解析 3.下载中 4.下载完成 5.结果 三.设计流程 1.bilibili_vide ...

  3. 千锋python笔记_《2020千锋Python入门视频全套全开源》多实用

    确实,对于在学开发或者已经从事开发工作的小哥哥小姐姐来说,恋爱这个事还挺让人揪心的! 有对象的时候又怕嘴笨不会哄对象,总不能跟对象说你看我用代码给你画个心吧!没对象的用爬虫技术爬来各种小哥哥小姐姐的头 ...

  4. pip安装包时如何指定安装在哪个python下?

    如: pip install -t /usr/local/lib/python2.7/site-packages/ xlrd 但我试了,貌似会出问题...主要是跟环境变量指定的python可能会冲突 ...

  5. python面试题_面试时全对这25道python面试题,成就了我月薪25K!附教程分享)

    之前面试的时候,面试官拿出一些python面试题对我说,只要全部正确直接给我20K,我一看题目笑了,居然全部都会,今天拿出来给大家分享一下~ 面试时全对这25道python面试题,成就了我月薪20K! ...

  6. python切片操作 当所有数据都省略时_python疑难问题---13、Python切片操作

    python疑难问题---13.Python切片操作 一.总结 一句话总结: Python切片操作的核心就是:切片操作的时候先分析step,因为step正负表示方向,再看start_index和end ...

  7. 千峰python线下培训

    Hello,各位锋迷们,我是小千. 今天周日,给大家推荐千锋金牌讲师宋宋最新出品的一套Python办公自动化教程. 扫码一键直达B站课程学习地址: 传送门:https://m.bilibili.com ...

  8. 千锋python培训班课程

    Python是一门全栈式语言:写个web服务,可以用python;写个服务器脚本,可以用python;写个桌面客户端,可以用python;做机器学习数据挖掘,可以就用python;写测试工具自动化脚本 ...

  9. 中国时光之美:旅途中的二十…

    原文地址:中国时光之美:旅途中的二十四节气作者:七月娃娃 ​ 文/图:七月娃娃 背上行囊,走过山和水, 最忘不掉的,是刹那间的光影和诗意. 在别人的故乡里行走, 也在自己的故乡里徘徊. 春夏秋冬,时节 ...

最新文章

  1. linux shell脚本攻略_(python)Linux下shell脚本监控Tomcat的状态并实现自动启动步骤...
  2. redis集合数据过期_如何从Redis中的集合中自动删除过期的密钥?
  3. IO、NIO、AIO 内部原理分析
  4. boost::geometry::util::is_implemented2用法的测试程序
  5. UVA - 796 Critical Links(tarjan求割边)
  6. c语言代码大全_从学生到专家,C语言开发必读的8本书
  7. node --- 一个很好用的包json-server
  8. OpenCV鼠标事件和滑动条事件
  9. 线性表—线性表的合并
  10. [BZOJ5286][洛谷P4425][HNOI2018]转盘(线段树)
  11. 订阅发布系统得解耦与冗余
  12. 快递100手机端页面抓取所有快递公司名称和代码
  13. php中求解二元一次方程,PHP实现二元一次方程式的求解
  14. 订阅消息 data.thing1.value is emtpy
  15. 入门力扣自学笔记180 C++ (题目编号:886)(涂色问题,可以多看看)
  16. SharePoint - 如何查询SharePoint ID?
  17. RHCEansible静态主机清单
  18. 华为云电脑.模式_云电脑还是云手机,为何阿里、华为都要做?
  19. 小白带你学安卓——初识android
  20. 卜算子.咏梅 英文版

热门文章

  1. python编程用户登陆c_django实现用户登陆功能详解
  2. oracle10g sys密码忘记,Oracle 10g忘记system,sys密码的解决办法。
  3. java并发编程之美-阅读记录1
  4. P3384 【模板】树链剖分
  5. PHPstorm相同变量标识
  6. 关于IOS中safari下的select下拉菜单,文字过长不换行的问题
  7. sql 给数据库表 字段 添加注释
  8. [转]虚拟机网络模式简介
  9. 商场专柜私收银现象治理要点
  10. SharePoint 使用代码创建 SPWeb/SPSiite/SPWebApplication以及WebPart添加到页面与删除 (一)...