前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在Python中使用词云

在Python中使用词云

作者头像
测试加
发布2022-12-05 12:14:04
7300
发布2022-12-05 12:14:04
举报

什么是词云?

词云,又称文字云,英文名:Word Cloud,是文本数据的视觉表示,由词汇组成类似云的彩色图形,用于展示大量文本数据。通常用于描述网站上的关键字元数据(标签),或可视化自由格式文本。每个词的重要性以字体大小或颜色显示。词云的作用:

  • 快速感知最突出的文字。
  • 快速定位按字母顺序排列的文字中相对突出的部分。

词云的本质是点图,是在相应坐标点绘制具有特定样式的文字的结果。

词云的构成

图表类型

词云

适合的数据

两个代表坐标的连续数据字段(自动计算)、一个代表文字内容的分类数据字段、多个代表文字样式的分类数据字段如颜色、大小、旋转角度等(可选)

功能

对比文字的重要程度

数据与图形的映射

两个连续数据字段映射到横轴和纵轴的位置、代表文字内容的分类数据字段映射到文字图形、多个代表文字样式的分类数据字段分别映射到文字图形的样式

适合的数据条数

超过 30 条数据

词云的应用

词云图可以很直观的显示词频,词云可用于对比大量文本,或者用文字做边界限制,描绘出各种形成。词云图是由词标签和词大小构成的,每个词标签由数据的维度决定,每个词大小由数据的度量决定。词云图适用于做一些用户的画像和用户的标签或者近期热点等场景。

词云如何生成?

本文主要讲解使用Python代码生成词云,会涉及使用Python第三方库使用。

  • wordcloud: 一个词云生成器,只要进行相关的配置就能生成相应的词云。

安装方式: pip install wordcloud

词云实例

简易词云

生成词云的基础代码也很简单,首先需要准备好“准备文本”,然后创建“创建词云对象”,通过文本数据生成词云,最后保存词云图片。

代码如下:

代码语言:javascript
复制
import wordcloud

sentence = 'Do not go gentle into that good night!'

wc = wordcloud.WordCloud()

wc.generate(sentence)

wc.to_file("test_wc.png")

简单几行代码就可以生成词云了,这种词云展示的比较简单。

图片轮廓的词云

为了能让展示的词云更美观可以生成带图片轮廓的词云,期望效果如下图:

首先,需要准备一个基础背景图片,可以去网上搜索就可以找到,如下图:

然后准备文本数据,生成图片的nd-array传入图片路径。创建词云对象,设置宽度、高度、背景颜色等属性,通过文本数据生成词云生成图片。

代码语言:javascript
复制
import wordcloud, imageio

sentence = "我爱我的祖国!她地大物博,幅员辽阔,每一个地方都有着它独特的美。倘若你去看过冬天的黑龙江,一定会被那儿赏心悦目的景色所吸引:皑皑的白雪落入松林,轻盈曼妙,犹如精灵在舞蹈,风吹过松林,好似天使在歌唱,晶莹的冰雕在月光的沐浴下闪闪发光。到了遍地牛羊的内蒙古,那又是另一番情景:策马奔驰在辽阔的大草原上,你可以听到牧羊人的歌声从远处悠悠传来,悦耳动听,犹如天籁。
祖国山川雄奇,河水秀逸,这样的美景难道不值得我爱吗? 我爱我的祖国!她有着五千年的灿烂文化:气势磅礴绵延万里的长城,是古代中国人民智慧和鲜血的结晶,那是我们民族的脊梁。今天它升华成为我们的民族精神,不断地鼓励着我们去克服重重困难。在汶川大地震中,我们团结一心,众志成城,军民协作,与天灾抗争,救出了无数鲜活的生命。正是这样的精神,让我们中华民族像长城一样屹立不倒。从轻呤婉约、细腻优雅的昆曲中,我看到了几千年来中国文化的精致卓绝,那是我们中国的美学,如中国的水墨画那样清新淡雅,显而不露。"


im = imageio.imread('test.jpg')

font_path="/System/Library/fonts/PingFang.ttc"

wc = wordcloud.WordCloud(
    #设置宽为600
    width=600,
    #设置高为800
    height=800,
    #设置背景颜色
    background_color='white',
    #设置字体,如果文本数据是中文一定要设置,不然就是方块
    font_path=font_path,
    #设置图片的形状
    mask=im,
    #设置轮廓粗细
    contour_width=1,
    #设置轮廓颜色
    contour_color='black'
)

wc.generate(sentence)

wc.to_file('wc.png')

最终的生成效果如下图:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-09-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试加 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是词云?
  • 词云的构成
  • 词云的应用
  • 词云如何生成?
  • 词云实例
    • 简易词云
    • 图片轮廓的词云
    相关产品与服务
    腾讯云图数据可视化
    腾讯云图数据可视化(Tencent Cloud Visualization) 是一站式数据可视化展示平台,旨在帮助用户快速通过可视化图表展示大量数据,低门槛快速打造出专业大屏数据展示。精心预设多种行业模板,极致展示数据魅力。采用拖拽式自由布局,全图形化编辑,快速可视化制作。腾讯云图数据可视化支持多种数据来源配置,支持数据实时同步更新,同时基于 Web 页面渲染,可灵活投屏多种屏幕终端。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档