5

文本数据可视化(上)——从 Wordle 谈起

 2 years ago
source link: https://geekplux.com/posts/text-data-visualization-wordle
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
文本数据可视化(上)——从 Wordle 谈起

文本数据可视化(上)——从 Wordle 谈起

本文首发于:GraphiCon 知乎专栏-文本数据可视化(上)——从 Wordle 谈起。原文地址:https://geekplux.com/2017/04/12/text-data-visualization-wordle

看到题目,你可能一脸懵逼,什么是 wordle?下面这幅图就是:

58f0320078efe.png

是不是很熟悉?大到宣传海报,小到个人名片,Wordle 如今随处可见。它可以轻松的展示出一段文字的关键词,让我们对这段话的内容一目了然。其实这属于数据可视化中的文本内容可视化,常用于社交网络中的内容分析,还记得前几年微博有有个插件(现在似乎找不到了),用户可以一键生成自己的微博关键词,当时引起了大量转发,因为很多用户的关键词出乎意料,让自己都大吃一惊。本文就从最简单的 Wordle 说起,说说文本内容可视化,以窥数据可视化一隅。

为什么要有 Wordle?#

其实要回答这个问题就要回答为什么要做数据可视化。我们先看下面这段话:

GraphiCon 取 GraphicsCon 图形控之意(类比 lolicon)。 我们会把我们觉得有趣的,好玩的,有用的图形学相关的技术,知识,想法,资讯放到 GraphiCon 这个小空间里。 GraphiCon 的 po 主们虽然遍布天涯海角,在从事着不同的事,但都是痴迷计算机图形学的小伙伴们。 只要你也对计算机图形学感兴趣,或者喜欢好玩有趣狂拽酷炫的图形项目,那么你也是 GraphiCon!

一眼扫过去,你可能能轻松地注意到 GraphiCon 出现了 4 次。而还有个关键词「图形」,虽然出现了 5 次,但显然没有 GraphiCon 醒目。平时阅读比较快的同学可能有一目十行的本领,其本质就是关键词提取。瞬间了解一段话的大意,进而判断要不要花时间去读。但这完全取决于你个人提取关键字的能力。如果换一种图形的形式,可能就会非常直观:

58e35ca7a99a0.png

看这张图明显比看枯燥的文字要直观的多,而且还意外发现了「计算机图形学」这个词的频率竟然也挺高。它在原文中出现了两次,这是我们单纯看文字很难发现的。不过,这幅图还不是最好的效果,你可能也发现:除了词频高的词,其他关键词很小,根本看不清;而且整个布局很零散,空白太多,没有一种聚合的感觉。

58f031f9367fa.png

这幅比上面的又稍美观了一点,同时对词的重要性也进行了重新统计,不再是单纯的根据词频。可能你觉得还不够美,那这样:

58f031f49a275.png58f031f5ad7e5.png58f031f75d220.png

哈哈,还有很多好玩的,不过例子中这段话的篇幅太短,关键词太少,所以显得不是很紧凑,很多更酷炫的样式也不适用了。

至此,我们可以总结一下 Wordle 的作用:

  • 把枯燥的数据直观地呈现出来,使人更好的洞察数据
  • 更有利于数据分析(比如发现「图形」才是出现最多的词)

其实数据可视化就是把复杂的数据转化为直观的图形,方便人们洞悉。而且刚才这个例子还只是最简单的文本数据,如果是非常复杂的数据,普通人根本看不懂的那种,就更需要数据可视化为我们抽丝剥茧,完美呈现。关于可视化的必要性我会慢慢渗透到之后的每一篇文章中,接下来开始介绍 Wordle 的制作过程。

文本信息的提取#

任何的数据可视化都离不开三大步骤[1]:分析、处理、生成,Wordle 亦然[2]。如何从一段文字变成一张优美的图片,我们大概要经历以下步骤:

  • 提取关键词(去掉冗余的文字)
  • 计算关键词权重(决定哪些词着重显示)
  • 布局(算出每个词摆放的位置)

第一步中,英文的分词相对中文来说简单的多(在创作本文的过程中,我几乎是找遍了中文标签云制作工具,没发现一款分词做的好的),把单词都分开后,去掉一些助词如 the、a、that 等,再把单词的时态语态还原就好了。第二步最常用的就是计算词频了,一个词出现的次数越多它的权重越大(Wordle 就是用了词频)。除此之外,还有用单词在句子中的成分来判断其重要性的、有用各种概率模型的,这涉及到自然语言处理和文本信息挖掘,总之方法多种多样。另外,文本数据挖掘一直也是热门的研究话题,尤其是中文处理这道难以逾越的鸿沟。大家有兴趣可以自行研究。

设计#

把单词任意排列的表现形式,最早的灵感来自于排版印刷:

zip

上图是《数据可视化之美》的配图,分别来自美国国家设计研究中心和古埃及草纸。95 年在动漫作品 EVA 中,词云的表现形式也有所体现[4]。

zip

这种看似杂乱无章的排布,恰恰与人类的跳跃思维相契合,人脑的思绪随着视觉的跳动也跟着不断联想。

而在计算机上,最早的文字可视化其实是「标签云」。当年博客爆发的时代,几乎每个博客里都有一个这样的插件:

58f031f6bce01.png

它用文字的大小和颜色的深浅来表达了文字在文本中的重要性,比你单纯看一段文字要直观的多。但它的缺点也很多:从美的角度来说,它同一行如果有一个词字体特别大则直接导致行距变大,不仅造成了空间的浪费,还让整体看起来非常不整齐、不协调;从信息展现的角度来说,字体的深浅大小不能更好的体现差异,比如上图中 good 的权重是 50,而 life 的权重是 20,但它俩看起来的差别并不大。

后来出现的 Wordle 针对这些缺点一一作了改进。首先它用字体的粗度来加深权重的展示,因为人的视觉对面积的感知比对饱和度的感知要强,所以加粗字体效果拔群;其次 Wordle 用紧凑的布局给人以美的享受,你甚至可以给定形状来生成不同的 Wordle。

zip

Wordle 具体采用的算法是贪婪算法,最开始在给定区域内把最重要的单词先摆到某个位置(这个位置你可以指定,一般是中心线),然后用下个单词在它的旁边不停做交叠测试,直到没有重叠。依次迭代,直到每个单词都摆放好。

Wordle 有什么不足之处#

虽然 Wordle 的设计已经很美观,但作为一个有批判性思维的少年,我们还是要对它批判一番:

  • Wordle 美观程度很大程度依赖于它所选的字体。相信你也见过宋体中文的 Wordle。。
  • 相同权重的单词,可能越长的显得权重越大,因为它占得面积更大。
  • 颜色意义不大。不过现在这个好像变成了优势,使它可以与不同图片结合。

除此之外#

Wordle 算是文本内容可视化中最经典的形式,除此之外还有一些更有趣的,比如下图的 DocuBurst [4]。它用环形布局巧妙地展示了文本的层级关系,外圈的单词是内圈单词的下一层。

58f031fe74aa3.png

正所谓“一图胜千言”,文本可视化把枯燥的文字变成有趣的图片帮助人们加深理解,可以说是功不可没。如果有兴趣继续了解可视化相关的内容,敬请期待下一期。

CC BY-NC 4.0 2022 © GeekPluxRSS

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK