# 导入库
from wordcloud import WordCloud
from imageio import imread
import jieba
# from collections import Counter

# 读入txt文本数据
text = open(r'C:\Users\15423\Desktop\词云制作\threekingdoms.txt', "r", encoding='utf-8').read()
# 结巴中文分词,生成字符串,默认精确模式,如果不通过分词,无法直接生成正确的中文词云
cut_text = jieba.lcut(text)

#去掉不重要的词
removes =[',','。','"',':','曰','将军', '二人','却说','\n', '次日','左右', '主公', '不能', '今日', '不可','商议','于是','军士']
cut_text=[word for word in cut_text if word not in removes]

#去掉重复的词语,遍历字典挨个去掉
dupDict={'曹操' : ['孟德','丞相'],
         '玄德' : ['刘备','皇叔','刘皇叔','玄德曰'],
         '云长' : ['关羽','关云长','关公'],
         '孔明' : ['诸葛亮','诸葛','孔明曰'],
         '张飞' : ['翼徳'],
         '赵云' : ['子龙','赵子龙'],
         '周瑜' : ['公瑾','都督']}

for replaceWord,dupWords in dupDict.items():
    for word in dupWords:
        ct=cut_text.count(word)
        idx=0
        while ct>0:
            i=cut_text.index(word,idx,-1)
            cut_text[i]= replaceWord
            idx=i+1
            ct-=1

# 词频统计--字典
word_count = {}
for word in cut_text:
    if len(word)>1:
        word_count[word] = word_count.get(word, 0) + 1
print(sorted(word_count.items(), key = lambda kv:kv[1],reverse=True)[:5])
# 人名的词频统计--counter
# word_count = Counter([word for word in cut_text if len(word)>1])
# print(word_count.most_common(5))

# 必须给个符号分隔开分词结果来形成字符串,否则不能绘制词云
result = " ".join(cut_text)
# print(result)

# 4.读入词云背景图片,设置成mask参数
mask = imread(r'C:\Users\15423\Desktop\词云制作\中国地图.png')

# 5.生成词云图
wc = WordCloud(
       # 设置词云背景图
        mask=mask,
        # 设置字体,不指定就会出现乱码
       font_path='C:/Users/15423/Desktop/词云制作/msyh.ttc',
        # 设置背景色
        background_color='white',
        # 设置背景宽
        width=500,
        # 设置背景高
        height=350,
        # 最大字体
        max_font_size=50,
        # 最小字体
        min_font_size=10,
        )
# 产生词云
wc.generate(result)
#wc.to_image()
# 保存图片
wc.to_file(r"C:/Users/15423/Desktop/词云制作/三国演义.png")

三国演义 制作词云 2------python相关推荐

  1. python——三国演义 制作词云

    python--三国演义 制作词云 题目: 设计一个程序,读出threekingdoms.txt文件中的三国演义全文,将常见人名进行去重后生成词云,并列出词频最高的5个词. 例:'玄德','刘备',' ...

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

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

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

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

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

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

  5. python怎么爬取知乎回答并制作词云_爬虫|爬取微博动态

    ​ 爬取微博是爬虫新手入门项目,相对简单.但没想到还是遇到了些问题.. 0 踩点 老规矩第一步先踩点.某个用户的微博网址为:https://weibo.com/u/id,其中id是一长串数字,每个用户 ...

  6. python怎么爬取知乎回答并制作词云_使用python爬取流浪地球影评并制作词云,看看别人都说了些说什么...

    流浪地球影评爬取 大过年的,蹭个热度,看完电影后爬一下影评并作出词云. 本次影评取自豆瓣: https://movie.douban.com/subject/26266893/ 抓包 首先是拿到访问的 ...

  7. Python 3.6 使用wordcloud制作词云(可设背景图像)

    在python 3.6环境中 使用wordcloud模块制作词云,首先在安装wordcloud模块,安装方法有几个,可参考安装方法与可能会遇到的问题 代码: #!/usr/bin/env python ...

  8. python爬取B站视频弹幕分析并制作词云

    1.分析网页 视频地址: www.bilibili.com/video/BV19E- 本身博主同时也是一名up主,虽然已经断更好久了,但是不妨碍我爬取弹幕信息来分析呀. 这次我选取的是自己 唯一的爆款 ...

  9. Python 爬虫实战(1):分析豆瓣中最新电影的影评并制作词云

    入门Python不久,想做个小项目练练手,碰巧最近一部国产电影<红海行动>反响不错,便萌生想法去抓取一下它最新的评论,并制作词云,来看看网页对这部电影的一些评价,接下来就是开始分析啦(分析 ...

  10. python爬取B站评论制作词云

    python爬取B站评论制作词云 江山代有才人出,B站评论占一半 废话不多说,咱们直接上代码` import imageio import jieba import wordcloud import ...

最新文章

  1. 霍尼韦尔epks 操作 组态 维护 使用 硬件 手册_标准四合一气体检测仪霍尼韦尔MiniMAX X4...
  2. 【深度学习】像素级分割网络新思路之DeepLabv3+
  3. Bochs调试Linux内核初步学习 - 3
  4. MySQL -- Lock wait timeout exceeded; try restarting transaction参数控制
  5. opengl坐标转换
  6. SAP UI5应用如果遇到数据绑定问题时,应该如何自己定位问题?
  7. linux红帽子怎么配置dhcp,LinuxDHCP的高级配置如何应用呢?
  8. 工程打包是什么意思_太生动形象了!500个建筑施工3D动画演示,施工工艺一目了然,零基础工程人也能看懂...
  9. Undedared identifier问题解决
  10. DBeaver 导出EXCEL文件
  11. windows 安装 mysql5.7.17
  12. BIO,NIO,AIO总结
  13. Windows 8 to Go
  14. windows下CCS安装教程
  15. 使用免费阿里云服务器搭建远程桌面服务
  16. vb mysql 5.1 adodb_VB 中 ADO、 ADODB、 ADODC 的区别与联系(皮毛)
  17. java ssm网上超市购物管理系统
  18. 玩转openpyxl,用python制作一个公司租车记录登记表!
  19. bzoj1597: [Usaco2008 Mar]土地购买
  20. 冥王星P的编曲日志《时光的眼泪》

热门文章

  1. 银行开发专业术语解释和银行系统开发架构的设计思想
  2. 6. DICOM图像显示-DCMTK-像素数据获取的三种方式和源码分析
  3. Latex:入门教程
  4. 创业公司专题数据(包含stata多种模型代码)
  5. 百度网盘下载器更新啦!PanDownload又带来了「资源搜索」功能!
  6. 数据库中的左连接和右连接
  7. Linux系统中搭建Docker容器 Portainer可视化界面
  8. PHP测试POST请求工具
  9. app安全渗透测试详细方法流程
  10. Maven 安装教程