揭开 Tufte「数据墨水比」的神秘面纱
文章摘要
这是 ScienceUX Labs 的 Adithya Manavalan、Michael Lai 和 Mike Morrison 做的一个交互式指南,名字叫「Tufte’s Razor」,讲 Edward Tufte 提出的「数据墨水比」(data-ink ratio):一张图里有多少墨水真正在表达数据,以及删减到哪一步该停。网站是纯前端渲染的单页应用,本文内容取自页面脚本里的文字,读者在页面上可以亲手拆解一张杂乱的柱状图,看着每部分墨水被逐像素统计。
基本定义。 数据墨水比等于「表达数据所用的墨水」除以「图表用掉的全部墨水」。指南把图上的墨水分成三类:数据墨水是擦掉就会丢信息的部分,比如每根柱子中间那条最细的线(柱子靠长度表达数值,这条线是表达数值所需的最少墨水),还有标题和坐标轴标签;冗余数据墨水是柱子多出来的宽度、重复坐标轴信息的数值标签,它们能帮读者读数,但删掉也不丢信息;非数据墨水是坐标轴线、网格线、边框、底纹等,和数字本身没关系。纸张不算墨水,不管是什么颜色;被别的墨水挡住的部分(比如柱子后面的网格线)也不算。指南也承认,严格按 Tufte 的定义(数据墨水是「不可擦除的、不冗余的、随数值变化而布置的墨水」),标题和标签其实不合格,因为柱子的名字不会随数值变化,但删掉它们读者就丢了必要信息,所以这里把它们算作数据墨水。
一步步擦除。 指南拿一张套用软件默认样式的五根柱状图做示范:先去掉最大块的非数据墨水,也就是灰色绘图区底纹,比值明显上升;再去掉网格线、刻度线、边框和过大的字号,比值反而略降,因为字变小后数据墨水也少了。接着让数值标签和坐标轴二选一,把「Chart Title」改成直接说出结论的标题(比如「北站最忙:每周 9 千人次」),比值继续上升。如果一直擦到只剩几根线,比值最高,但没人知道这些线表示什么。结论是不能一味追求最高比值,退回一步才是合适的停点。
几个反直觉的例子。 背景色:白纸、浅蓝纸、深色纸上,比值完全一样,因为纸不是墨水;但在柱子后面画一个浅色方框,那就是大块非数据墨水,比值会大降。柱宽:柱子越宽,同样的数值用的墨水越多,比值越低;细到发丝时比值最高,却很难看清、难比较。指南建议柱子大约占每个格子宽度的一半。字号:标题和标签属于数据墨水,字号放大反而让比值上升,但会抢走对数据的注意力;字号缩小比值下降,读者也更吃力。所以比值决定不了字号,只要保证标题比标签大、字号在一臂距离外能看清就行。
比值看不见的问题。 指南还整理了 Lan 和 Liu 研究过的 2000 多张被公众吐槽为「垃圾」的可视化(IEEE TVCG,2025)中的常见缺陷,并说明每种缺陷会把比值往哪个方向推。比如阴影和渐变、装饰图案压在数据上、颜色/大小/形状重复编码同一变量、散点相互遮挡、双 Y 轴、数据挤得太密。有些问题比值根本反映不出来:被遮挡的点不耗墨水,计数器看不到遮挡的代价,只有读者看得到;双 Y 轴本身用墨很少,代价在读者脑子里。最后给出一份清单:标题要交代背景,数值要带单位,标签、刻度和网格线不要全都用上,少用底纹和边框,柱宽适中、柱子画全高,尽量直接标注,没有自然顺序的类别要排序,最多突出一两个重点,所有文字都要清晰可读。指南最后说明,这个网页本身也按同样的原则设计过。
HN 评论精华
这个帖子评论不多。值得一提的是用户 s4074433 自称是相关文章的作者,在评论区逐条回应。另外有好几位用户认为这个指南本身像 LLM 生成的文字,重复、啰嗦,这也成了讨论的一条支线。
对 Tufte 理论本身的质疑
- BrenBarn 说他当年满怀期待读了 Tufte 的《The Visual Display of Quantitative Information》,结果很失望,因为书里的主张几乎没有论证。他接受「很多图太乱」这个大方向,但没理由认为量化「数据墨水」占比并优化它就是最好的办法。书里很多内容是把主观审美包装成客观真理,可靠的做图准则应该建立在心理学实验上。burpingtree 推荐 William Cleveland,说他做过真正的感知实验,而且比 Tufte 早,并批评 Tufte「全是风格没有实质」。uolmir 推荐了一篇较新的综述论文。
- s4074433 引用那篇综述指出:呼吁去除杂乱元素的证据其实很混杂,有研究发现人们更喜欢简洁版,也有研究发现相反;读图速度方面,去掉某些元素会变快,去掉另一些会变慢。所以他也不认为数据墨水比是什么魔法数字,单纯追求最大化或最小化都有陷阱,应该用它来理解自己的设计决定带来什么影响。
- AlanYx 认为 Tufte 只是在展示自己喜欢的例子,难以提炼出可推广的原则,所以各种「Tufte 风格」的 CSS 框架和 LaTeX 模板最后都只是照搬他书的外观:ET Book/Bembo 字体、斜体小标题、宽侧边栏、旁注代替脚注,这个网站也是如此。
- quietbritishjim 认为这个指标「完全站不住脚」,证据就在 Tufte 自己书里:把散点图坐标轴缩短到数据范围,按指标算是双赢,墨水更少还多表达了数据范围,可实际看起来很糟糕,坐标轴在角上接不上,整张图碎成一片。几张图并排放时,本该加个框把它们隔开,但 Tufte 讨厌框。他认为大脑不是逐个像素处理墨水,真正该减少的是视觉复杂度,有时多加墨水反而更简洁。他看了作者的另一篇文章后很喜欢,不过认为该文回避了真正的结论:有些额外的墨水根本不算 chartjunk。
对示例和具体建议的批评
- gjm11 认为「把柱子变窄能改进柱状图」这个想法很傻。目标始终是视觉清晰度,少用非数据墨水通常有帮助,但并非总是如此。他提出,衡量「墨水的空间变化」可能比衡量墨水总量更接近真实的清晰度,因为让人觉得杂乱的是颜色的跳变,大块纯色不会。他还指出,Tufte 书中紧挨着「数据墨水」一节的 Playfair 贸易差额图,用阴影表示顺差逆差,这些阴影按本指南的标准完全是冗余墨水,可删掉它并不会让图更好。CGMthrowaway 也说柱子本身就是数据,应该尽量醒目,就像强调文字时会加粗而不是变细。
- groby_b 认为坐标轴刻度和标签对读图至关重要,不能说它们不是数据墨水,而且 Tufte 本人的建议也只是把它们调淡,不是删掉。他还吐槽这个页面本身「用了很多墨水,数据却很少」。
- oulipo、wiredfool 认为用一张只有几个数据点的柱状图做示范不太合适:数据墨水比的关键是提高数据密度,用同样的墨水表达更多维度。gjm11、addandsubtract 说这么少的数据干脆用表格,这本来就是 Tufte 的第一条原则。
- anon48293 发现那张被判为「错误」的、带两条浅灰水平线的版本,恰恰最方便比较柱高,而比较柱高正是这张图的用途。
- jameshart 用深色模式看,大部分「墨水」都花在了背景上,结果每个建议都让比值下降。snoman 回了一句「纸不是墨水」。
- jmkd 觉得第一节的问题措辞太绕,明明知道答案还是被绕晕了。rout39574 指出第一节说去掉底纹会提高比值,第四节又说加背景色不影响比值,前后看起来矛盾(指南的解释是:画上去的色块算墨水,纸的颜色不算)。
「这是不是 LLM 写的」
- danlitt 用一段「数据墨水比就是数据和墨水之比……除非不该提高的时候」来戏仿文章,问「这是什么 slop」。mtlynch 指出原文没有这段话,给戏仿加引号容易误导。hanibrel 说文章重复得厉害,第一节就把要点讲完了,后面一直在重复。fwlr 嘲讽说这是用「slop 大炮」把数据墨水比轰成了雾。Terr_ 认为这是 LLM 生成文档的通病,而文章的主题恰恰是怎样清晰地和人沟通,这就更讽刺了。