格式化图表:何时适合在折线图下方使用填充?

机器算法验证 数据可视化
2022-03-21 17:43:56

这是一个数据可视化问题——我希望可以在这里问这个问题。

什么时候适合在时间序列的折线图下方使用填充,如下图所示?(显示一天内的 ping 时间)

下面有填充的折线图

我想使用简单的线条更常见,下面没有填充,但是可以使用填充来实现视觉变化吗?

我特别有兴趣了解有关该主题的任何感性研究或任何风格指南。

3个回答

平衡图形的美学和信息方面有一点艺术。像 Edward Tufte 和 Stephen Few 等著名的可视化顾问/作者选择了一种最小的美学,以避免从图表的信息部分分散注意力。然而,对于一些观众来说,少量的繁荣是合理的——例如,参见 Alberto Cairo 的数据可视化的新闻应用。

感性研究的角度是,每个图形元素都传达了一个信息,有些是我们没有意识到的,因为我们的视觉皮层处理它(“前注意处理”)。额外的元素,甚至是多余的元素,都可能导致额外的处理。适当的图表取决于要传达的信息和受众。

对于您的具体问题,连接线强调趋势(以及趋势的变化)。填充区域强调与基线的偏差。条形图或针形图将强调偏离基线的离散事件。

图形的上下文也很重要。如果您有一个紧密排列的图表网格,则填充将有助于将每条线与其基线相关联。

最后,添加冗余图形元素/花朵的另一个考虑因素是,使用更多信息元素扩展图形变得更加困难。例如,您可能想要突出显示特殊值、覆盖其他趋势线或覆盖带,例如在以下模型中。

在此处输入图像描述

前两个答案涵盖了主要的要点,但仍有几点需要提及。

首先,我应该说我不同意极简主义的绘图方法——所有多余的墨水都必须去掉。分散注意力的、无意义的变化应该消失。但是,与单条线相比,实心区域可以更好地吸引眼球并一目了然地传达更多信息。正如你所说,它可以增加“视觉多样性”。

然而,正如@xan 所指出的那样,快速浏览对一个区域的解释也不同于一条线,在某种程度上是潜意识的。

面积图表示当您沿 x 轴前进时累积的总量。如果您比较两张图,其中一张填充的区域较大,您的一瞥会告诉您,无论开始值和结束值如何,它的总数都更大。

相反,折线图显示变化的值。重点是从一个点到下一个点的位置变化,而不是累积的总数。

那么什么时候应该使用面积图呢?

  • 当这些值代表一个明确的数量时,图表上显示了一个明确的零点;
  • 当该值表示在每个点增加(或减少)的数量时,例如正常的每日降雨量或每月损益;
  • 当该值代表一个总体的分布时,表示曲线下的总面积代表样本的总大小,例如不同年级学生数量的钟形曲线(基本上是一个平滑的直方图)。

这个想法是,在阅读图表时,如果你在 x 轴上取两个点,它们之间显示的区域应该代表在该范围内累积的实际数量。出于这个原因,如果您的值包括负数,我建议对负数和正数区域使用相反的颜色,以强调它们在总数中被抵消。

什么时候应该使用面积图?

  • 当零点是任意的(如@timcdlucas所说的非绝对温度),无效(如两个值的比率的测量值,如汇率),或由于空间原因未在图表上显示;
  • 当线高显示的值已经代表累积量度时,例如迄今为止的总降雨量(月/年)或债务/储蓄;
  • 当值代表单个变化实体的位置/值而不是累积时;
  • 当你想比较同一张图表上的多条线时(如果你看不到整个区域,你就失去了意义——而是并排比较区域图表)。

考虑到这些准则,您的 ping 图可以用两种方式解释。

一方面,如果您将 ping 速度视为在一天中变化的单个变量,那么简单的折线图将是最合适的。

另一方面,如果您要比较两个不同网络的每日 ping 速度模式(或不同日期/时间段的同一网络),那么您可能想要强调网络任务所需的总时间。例如,如果您的图表有多个峰值,而不是只有一个,那么折线图会强调速度的可变性,而面积图会强调总延迟。

比较:
线形图 带有填充区域的相同图表
图表前半部分(红线左侧)的累积总数略大于第二部分,即使峰值在右侧达到更高的最大值。填充强调左侧的实心块,以便更好地平衡峰值。

(原谅糟糕的图像质量——不知道如何让 R 做面积图!不得不单独导出和编辑。)

还有几点需要考虑:

如评论中所述,如果 x 轴不在自然 y 零点,则底部填充在很大程度上是不合适的。这可能是因为 y 轴被缩放以从零以外的数字开始,或者因为使用的单位没有自然零解释(例如,开尔文有自然零,而摄氏度没有。)

其次,底部填充特别有效的情况是数据本身是否可以被视为未填充。例如,山脉高度的折线图对于未填充是有意义的,填充颜色代表地球,而未填充代表空气。

一个相关的例子可能是计数数据。如果我们在每个 x 点堆叠所有个体,我们将得到一个条形图。如果在条形之间插值有意义,我们最终会得到一个带有底部填充的折线图。

这张来自“定量信息的视觉展示”的图像可能会更好地解释它。它显示了第二次战争期间哪些军事单位在欧洲(我认为)。在每个时间点堆叠单位会给您一个未满的条形图。在数据顶部绘制一条线会为您提供一个未填充的折线图。