词云图的美化就是把词云图的背景和颜色进行美化,以《红楼梦》词云图为例,如下所示:

首先绘制词云,跟之前的代码操作一样:

import jieba

import numpy

import codecs

import pandas

#读取红楼梦文本

file = codecs.open(

r"C:\Users\www12\Desktop\data\2.5\红楼梦.txt", 'r', 'utf-8'

)

content = file.read()

file.close()

#导入专用词库

jieba.load_userdict(r'C:\Users\www12\Desktop\data\2.5\红楼梦词库.txt');

#分词

segments = []

segs = jieba.cut(content)

for seg in segs:

if len(seg.strip())>1:#去掉单字词

segments.append(seg);

#分词结果添加到数据框中

segmentDF = pandas.DataFrame({'segment':segments})

#移除停用词

stopwords = pandas.read_csv(

r"C:\Users\www12\Desktop\data\2.5\StopwordsCN.txt",

encoding='utf8',

index_col=False,

quoting=3,

sep="\t"

)

segmentDF = segmentDF[

~segmentDF.segment.isin(stopwords.stopword)

]

#移除无效词

wyStopWords = pandas.Series([

# 42 个文言虚词

'之', '其', '或', '亦', '方', '于', '即', '皆', '因', '仍', '故',

'尚', '呢', '了', '的', '着', '一', '不', '乃', '呀', '吗', '咧',

'啊', '把', '让', '向', '往', '是', '在', '越', '再', '更', '比',

'很', '偏', '别', '好', '可', '便', '就', '但', '儿',

# 高频副词

'又', '也', '都', '要',

# 高频代词

'这', '那', '你', '我', '他',

#高频动词

'来', '去', '道', '笑', '说',

#空格

' ', ''

]);

segmentDF = segmentDF[

~segmentDF.segment.isin(wyStopWords)

]

#词频统计

segStat = segmentDF.groupby(

by=["segment"]

)["segment"].agg({

"计数":numpy.size

}).reset_index().sort_values(

by=["计数"],

ascending=False

);

segStat.head(100)

#绘制词云

#http://www.lfd.uci.edu/~gohlke/pythonlibs/

from wordcloud import WordCloud

import matplotlib.pyplot as plt

wordcloud = WordCloud(

font_path='D:\\simhei.ttf',

background_color="black"

)

words = segStat.set_index('segment').to_dict()

wordcloud = wordcloud.fit_words(words['计数'])

plt.imshow(wordcloud

plt.close()

得到了和之前类似的词云,下面在此基础上进行词云的美化:

首先选取一张背景图

#词云美化

首先导入需要的包:

from scipy.misc import imread

import matplotlib.pyplot as plt

from wordcloud import WordCloud, ImageColorGenerator

#导入背景图

bimg = imread(r"C:\Users\www12\Desktop\data\2.5\贾宝玉.png")

wordcloud = WordCloud(

background_color="white",

mask=bimg, font_path='D:\\PDM\\2.5\\simhei.ttf'

)

#将图片赋值给mask参数

wordcloud = wordcloud.fit_words(words['计数']) #绘制词云图

#设置词云颜色

bimgColors = ImageColorGenerator(bimg)

plt.axis("off")

plt.imshow(wordcloud.recolor(color_func=bimgColors))

plt.show()

结果如图:

噢,腿太长了,效果并不好,原图截掉一部分,重新绘制。

这次大功告成!宝玉C位妥妥的!

python红楼梦绘制词云形状图_python数据挖掘实战笔记——文本挖掘(5):词云美化之绘制《红楼梦》词云图...相关推荐

  1. python数据挖掘实战笔记——文本挖掘(9):相似文章推荐

    概念: 相似文本推荐:在用户阅读某篇文章的时候,为用户推荐更多与在读文章内容类似的文章. **推荐:**指介绍好的人或事物,希望被任用或接受.数据挖掘领域,推荐包括相似推荐及协同过滤推荐. **相似推 ...

  2. python数据挖掘实战笔记——文本挖掘(8):用sklearn包进行关键字提取

    概念: sklearn: 全名Scikit-Learn,是基于python的机器学习模块,网址:http://scikit-learn.org/stable/index.html ,里面对一些常用的机 ...

  3. 云炬Qtpy5开发与实战笔记 1开发第一个桌面应用Hello World

    云炬Qtpy5开发与实战笔记 0搭建开发环境(傻瓜式安装) 1.打开 Pycharm,选择 Create New Project,创建一个新项目 2.选择Pure Python表示创建一个纯Pytho ...

  4. 云炬Qtpy5开发与实战笔记 2PyCharm添加QTDesinger扩展并创建第一个.ui文件

    1.配置使用QTDesigner扩展工具 在pycharm的项目配置中配置扩展工具,将QTDesigner加入其中: 2.在pycharm中打开QTDesigner 或者: 此时,我们就可以使用QTD ...

  5. python 降维 聚类_python数据挖掘实战之四:聚类

    计划写一下本学期选修的<机器学习与商业数据挖掘>课程的一系列实战笔记,本篇是第四节课的内容--聚类. 聚类 聚类分析(cluster analysis)是常见的数据挖掘手段,其主要假设是数 ...

  6. python分析鸢尾花数据_python数据挖掘学习笔记】十六.逻辑回归LogisticRegression分析鸢尾花数据...

    但是很多时候数据是非线性的,所以这篇文章主要讲述逻辑回归及Sklearn机器学习包中的LogisticRegression算法 #2018-03-28 16:57:56 March Wednesday ...

  7. 云原生微服务架构实战精讲第二节 云原生和Kubernete

    第03讲:云原生应用的 15 个特征 本课时我将带你学习云原生应用. 微服务架构只是一种软件架构风格,并不限制所采用的实现技术,开发团队可以自由选择最合适的技术来实现.在第 01 课时介绍微服务架构的 ...

  8. python读取excel画出饼状图_Python入门进阶:Python绘制饼图到Microsoft Excel

    原标题:Python入门进阶:Python绘制饼图到Microsoft Excel 来自:Linux迷https://www.linuxmi.com/python-pie-chart-microsof ...

  9. python绘制简单城市剪影图_Python之绘制个人足迹地图

    前两年,足迹地图小程序风靡朋友圈,一时间大家都流行晒自己的旅行地图.但是,笔者最近体验了好几款足迹地图的小程序,发现这些小程序虽然号称是足迹地图,但最多只是展示到省级别,无法精确到市级别,因此,笔者周 ...

最新文章

  1. 微信小程序限制当前位置和目的地的距离
  2. python入门教程书-清华大学出版社-图书详情-《Python快速入门精讲》
  3. 如何在设计项目中使用冷调酷色
  4. jquery复选框组清空选中的值_jQuery选取所有复选框被选中的值并用Ajax异步提交数据...
  5. 在WPF控件上添加Windows窗口式调整大小行为
  6. js 导出Excel
  7. CSS之内联、内部、外部样式
  8. Linux树莓派怎么查看ntp服务,树莓派实现NTP服务器
  9. 用Python走入史学经典《三国演义》中的社交网络
  10. 有一种爱 不能称之为爱情
  11. Flask实现JWS身份校验
  12. 劲霸男装四十年:“真男人”成“老男人”还能如何劲霸?
  13. JavaScript结课报告
  14. 阿拉德之怒获取服务器配置文件失败,阿拉德之怒为什么安装失败?阿拉德之怒安装失败解决方案...
  15. Gearman vs Beanstalkd
  16. Contest2230 - 抗击疫情,从我做起--大中小学生联合训练赛第三十九场3-10
  17. 邢台市工业机器人集成商_十大优秀工业机器人系统集成商分析
  18. Django框架的中的setting.py文件说明详解
  19. html form role,Spring Security中html页面设置hasRole无效的问题
  20. TC写的“泡泡堂”(1)

热门文章

  1. 计算机函数中left是什么,Left函数的作用是什么?
  2. 档案学专业计算机课,档案学专业解读_档案学专业介绍_档案学专业开设课程-高考圈...
  3. List(双向链表)
  4. 打怪升级之小白的大数据之旅(六十七)<Hive旅程第八站:Hive的函数>
  5. 【深度学习不是犯罪】欧盟祭出最严数据保护法:专家解读 GDPR
  6. 微信图文消息中如何使用svg图片
  7. Verilog HDL
  8. 2022年湖北省大学生电子设计竞赛A题(单项交流电子负载)赛后总结
  9. jvarkit包问题反馈:构建成功,部分方法测试失败第1类错误分析
  10. CSS动画之旋转魔方轮播