Python 词云可视化【爆肝之作】

本文是一份Python词云可视化的详细教程,从四行代码快速上手,逐步讲解如何制作不同类型的词云,包括美化词云、从外部文件读入文本、中文分词、绘制指定形状的词云,并涉及情感分析和文本挖掘。通过实例,帮助读者掌握词云的高级玩法,适合编程初学者和进阶者学习。
摘要由CSDN通过智能技术生成

爆肝之作,禁止白嫖

词云是文本大数据可视化的重要方式,可以将大段文本中的关键语句和词汇高亮展示。

从四行代码开始,一步步教你做出高大上的词云图片,可视化生动直观展示出枯燥文字背后的核心概念。进一步实现修改字体、字号、背景颜色、词云形状、勾勒边框、颜色渐变、分类填色、情感分析等高级玩法。

学完本课之后,你可以将四大名著、古典诗词、时事新闻、法律法规、政府报告、小说诗歌等大段文本做成高大上的可视化词云,还可以将你的微信好友个性签名导出,看看你微信好友的“画风”是怎样的。

从远古山洞壁画到微信表情包,人类千百年来始终都是懒惰的视觉动物。连篇累牍的大段文本会让人感到枯燥乏味。在这个“颜值即正义”的时代,大数据更需要“颜值”才能展现数据挖掘的魅力。

对于编程小白,学会此技可以玩转文本,入门中文分词、情感分析。对于编程高手,通过本课可以进一步熟悉Python的开源社区、计算生态、面向对象,自定义自己专属风格的词云。

词云的应用场景

  • 会议记录
  • 海报制作
  • PPT制作
  • 生日表白
  • 数据挖掘
  • 情感分析
  • 用户画像
  • 微信聊天记录分析
  • 微博情感分析
  • Bilibili弹幕情感分析
  • 年终总结

安装本课程所需的Python第三方模块


一行命令安装(推荐,适用于99.999%的情况)

打开命令行,输入下面这行命令,回车执行即可。

pip install numpy matplotlib pillow wordcloud imageio jieba snownlp itchat -i https://pypi.tuna.tsinghua.edu.cn/simple

如果安装过程中报错(0.001%会发生)

如果报错:Microsoft Visual C++ 14.0 is required.

解决方法:

到 http://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud 页面下载所需的wordcloud模块的.whl文件,再用pip安装下载的文件。

比如,对于64位windows操作系统,python版本为3.6的电脑,就应该下载

wordcloud-1.4.1-cp36-cp36m-win_amd64.whl这个文件

下载后打开命令行,使用cd命令切换到该文件的路径,执行pip install wordcloud-1.4.1-cp36-cp36m-win_amd64.whl命令,即可安装成功。

四行Python代码上手词云制作


1号词云:《葛底斯堡演说》黑色背景词云(4行代码上手)

import wordcloud
w = wordcloud.WordCloud()
w.generate('and that government of the people, by the people, for the people, shall not perish from the earth.')
w.to_file('output1.png')

运行完成之后,在代码所在的文件夹,就会出现output.png图片文件。可以看出,wordcloud自动将and that by the not from等废话词组过滤掉,并且把出现次数最多的people大号显示。


# 导入词云制作第三方库wordcloud
import wordcloud
# 创建词云对象,赋值给w,现在w就表示了一个词云对象
w = wordcloud.WordCloud()

# 调用词云对象的generate方法,将文本传入
w.generate('and that government of the people, by the people, for the people, shall not perish from the earth.')

# 将生成的词云保存为output1.png图片文件,保存出到当前文件夹中
w.to_file('output1.png')

wordcloud库为每一个词云生成一个WordCloud对象(注意,此处的W和C是大写)

也就是说,wordcloud.WordCloud()代表一个词云对象,我们将它赋值给w

现在,这个w就是词云对象啦!我们可以调用这个对象。

我们可以在WordCloud()括号里填入各种参数,控制词云的字体、字号、字的颜色、背景颜色等等。

wordcloud库会非常智能地按空格进行分词及词频统计,出现次数多的词就大。

美化词云


2号词云:面朝大海,春暖花开(配置词云参数)

增加宽、高、字体、背景颜色等参数

# 2号词云:面朝大海,春暖花开
# CSDN专栏:程序媛柚柚

import wordcloud

# 构建词云对象w,设置词云图片宽、高、字体、背景颜色等参数
w = wordcloud.WordCloud(width=1000,height=700,background_color='white',font_path='msyh.ttc')

# 调用词云对象的generate方法,将文本传入
w.generate('从明天起,做一个幸福的人。喂马、劈柴,周游世界。从明天起,关心粮食和蔬菜。我有一所房子,面朝大海,春暖花开')

# 将生成的词云保存为output2-poem.png图片文件,保存到当前文件夹中
w.to_file('output2-poem.png')

如果参数过多,第二行写成长长的一行不好看,可以写成多行,让代码更工整

# 2号词云:面朝大海,春暖花开
# CSDN专栏:程序媛柚柚

import wordcloud

# 构建词云对象w,设置词云图片宽、高、字体、背景颜色等参数
w = wordcloud.WordCloud(width=1000,
                        height=700,
                        background_color='white',
                        font_path='msyh.ttc')

w.generate('从明天起,做一个幸福的人。喂马、劈柴,周游世界。从明天起,关心粮食和蔬菜。我有一所房子,面朝大海,春暖花开')

w.to_file('output2-poem.png')

常用参数

  • width 词云图片宽度,默认400像素

  • height 词云图片高度 默认200像素

  • background_color 词云图片的背景颜色,默认为黑色

    background_color='white'

  • font_step 字号增大的步进间隔 默认1号

    font_path 指定字体路径 默认None,对于中文可用font_path='msyh.ttc'

  • mini_font_size 最小字号 默认4号

  • max_font_size 最大字号 根据高度自动调节

  • max_words 最大词数 默认200

  • stop_words 不显示的单词 stop_words={"python","java"}

  • Scale 默认值1。值越大,图像密度越大越清晰

  • prefer_horizontal:默认值0.90,浮点数类型。表示在水平如果不合适&#

  • 14
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平静愉悦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值