数据可视化的基本图表类型

图表是处理数据时不可或缺的一部分,因为它们能够将大量数据浓缩成易于理解的格式。数据可视化能够帮助初次接触数据的人发现洞见,同时也能向不会看到原始数据的人传达研究结果。市面上有无数种图表类型,每种都有不同的使用场景。创建数据可视化的最困难部分往往是确定哪种图表类型最适合当前任务。

你选择图表类型将取决于多个因素。你计划绘制哪些类型的指标、特征或其他变量?你计划向谁展示——只是为自己进行初步探索,还是向更广泛的受众展示?你希望读者得出什么样的结论?

在本文中,我们将概述您在可视化工具中最常看到的基本图表类型。通过这些图表,您将拥有一个广泛的工具箱来满足您的数据可视化需求。关于根据使用场景选择每种图表的指导,将在一篇后续文章 中介绍。

基础四类

在 Stephen Few 的著作 《Show Me the Numbers》  中,他提出了四种主要的数值编码方式,通过条形、线条、点和框来表示位置值。因此,我们将从四种基本图表类型开始,每种对应一种数值编码方式。

条形图

This bar chart shows the number of purchases made by different user types

条形图 中,数值通过条形的长度来表示,每条条形对应一个测量组。条形图可以是垂直或水平排列的;垂直条形图有时被称为柱状图。当您有大量条形需要绘制,或者条形上的标签需要额外空间以保持可读性时,水平条形图是一个不错的选择。

折线图

This line chart shows changes in a currency exchange rate over time|395x293

折线图  展示在连续测量中的值变化,例如随时间的变化。线的上下移动有助于突出正负变化。它还可以揭示整体趋势,帮助读者对未来的结果进行预测或展望。多个折线图也可以衍生出其他相关图表,如火花线图或脊线图。

散点图

This scatter plot demonstrates a moderate linear correlation between two numeric variables

散点图  使用位于两个坐标轴上的点来显示两个数值变量的值:每个变量一个坐标轴。散点图是展示所绘变量之间关系的多功能方式——无论这种相关性是强还是弱、是正向还是负向、是线性还是非线性。散点图也非常适合识别异常值点和数据中的可能空白。

箱线图

This box plot compares the distribution of a numeric variable for three levels of a categorical variable

一个箱线图  使用箱子和须线来总结测量组内值的分布。箱子和须线的位置显示了数据集中的主要区域。当我们有多个组需要相互比较时,我们最常看到箱线图;当只有一个组需要绘制时,我们更倾向于使用更详细的图表。

表格和单个值

Single statistics can be reported as they are rather than as a chart

在继续探讨其他图表类型之前,值得花点时间欣赏直接展示原始数字的选项。特别是,当你只有一个数字要展示时,直接显示该值是一种合理的数据呈现方式。当分析中关注精确值时,你可以将它们包含在随附的表格中,或通过图形可视化的注释来呈现。

常见变体

通过改变编码的使用方式或包含额外的编码,可以产生更多的图表类型。辅助编码如面积、形状和颜色,可用于为更基本的图表类型添加额外的变量。

直方图

This histogram shows the distribution of response times to a ticketing system, grouped by hours

如果条形图中的组实际上是连续的数值范围,我们可以将条形图并排放置以生成一个直方图 。直方图中的条形长度通常对应于数据点的计数,而它们的模式展示了数据中变量的分布。当垂直值不是频率计数时,通常会使用线形图等不同类型的图表。

堆叠条形图

This stacked bar chart shows revenue by store location, divided by department

标准条形图的一种修改方式是将每个条形图根据第二个分组变量的值分成多个较小的条形图,这被称为堆叠条形图 。这不仅可以像普通条形图一样比较主要组值,还可以展示每个组的整体相对于其组成部分的相对分解。

分组柱状图

This grouped bar chart shows new quarterly revenue divided by representative

另一方面,如果子条形图并排放置成簇而不是保持在它们的堆叠中,我们将得到分组条形图 。分组条形图不允许比较主要组的总计,但能更好地允许比较子组。

散点图

This dot plot shows differences in performance for different experimental conditions

散点图与柱状图类似,都表示不同分类组别的数值,但它根据点的位置编码数值,而不是根据柱子的长度。当需要跨类别比较,但零基线没有信息量或没有用的时候,散点图很有用。你也可以把散点图看作是删除了线的折线图,因此它可以用在无序类别的变量上,而不仅仅是连续或有序变量。

面积图

This area chart shows number of daily trips, divided by user type

一个面积图  与线图有着相同的起点——通过线段连接的值点——但它增加了柱状图中的一个概念,即在线和基线之间添加阴影。这种图表最常见的形式是结合堆叠的概念,以展示总量的变化,同时也展示其组成部分的贡献变化。

双轴图

This area chart shows number of daily trips, divided by user type

双轴图将两个不同的图表叠加在一起,共享水平轴,但可能具有不同的垂直轴刻度(每个组件图表一个)。这可以用来直接比较两组垂直值,同时包含水平轴变量的上下文。通常使用不同的基础图表类型,如柱状图和折线图的组合,以减少每个组件图表不同轴刻度带来的混淆。

气泡图

This bubble chart shows the relationship between three numeric variables by x-position, y-position, and point size

展示三个变量之间关系另一种方式是通过修改散点图。当第三个变量是分类变量时,点可以使用不同的形状或颜色来表示所属组别。如果数据点按某种方式排序,点还可以用线段连接起来,以显示数值的顺序。当第三个变量是数值型变量时,这时就需要用到气泡图  。气泡图在基础散点图的基础上,通过第三个变量的值来确定每个点的大小。

密度曲线

This density curve shows a smooth distribution by adding a smooth amount of area around each data point

密度曲线,或核密度估计,是展示数据分布的一种替代方法,可以替代直方图。它不是将数据点收集到频率箱中,而是每个数据点贡献一小部分数据,这些收集起来的整体就形成了密度曲线。虽然密度曲线可能暗示一些实际不存在的数据值,但它们是平滑数据噪声、了解分布信号的一种好方法。

小提琴图

This violin plot compares the distribution of a numeric variable for three levels of a categorical variable

与箱线图比较组间值分布的方法相比,小提琴图是一种替代方案。在小提琴图中,每组箱线图和须线都被围绕中心基线的密度曲线所取代。这可以更好地比较组间数据形状,尽管这会失去精确统计值比较的优势。小提琴图的一种常见变体是在小提琴图顶部添加箱线样式标记,以兼顾两者的优点。

热力图

This heatmap shows new revenue by quarter and representative|395x293

热力图  基于两个感兴趣变量呈现一个值网格。轴变量可以是数值型或分类型;网格的创建方式类似于直方图或条形图,将每个变量划分为范围或级别。网格单元格根据值进行着色,通常较深的颜色对应较高的值。当有大量数据点需要绘制,但点密度使得变量之间的真实关系难以看清时,热力图可以是一个有趣的可视化替代方案。

专家图表

有许多其他图表以特定方式编码数据,适用于特定场景。 Xenographics  包含了一些由非常特定目的驱动的奇特图表集合。然而,其中一些图表的应用场景足够常见,可以被认为是必须了解的。

饼图

This pie chart shows share of votes for candidates following an election

你可能会对饼图饼图  被归在这里的“专家”部分感到惊讶,考虑到它们的使用频率有多高。然而,饼图使用了一种不常见的编码方式,将值表示为从圆形中切割出的区域。由于饼图通常在其周缘缺乏数值标记,因此通常很难准确了解各切片的大小。然而,饼图及其表亲甜甜圈图在向读者传达“部分与整体比较应该是可视化主要信息”这一点上非常出色。

漏斗图

This funnel chart shows conversion rates from impression and through clicks

一个漏斗图  经常出现在商业环境中,用于追踪访客或用户在流程管道中的情况。该图通过每个阶段分界处漏斗的宽度显示有多少用户到达了被追踪过程的每个阶段。漏斗的收窄有助于说明这个类比,但可能会让人混淆真正的转化率。条形图通常可以完成漏斗图同样的目的,但能以更清晰的方式呈现数据。

子弹图

This bullet chart shows pageviews and downloads against goal benchmarks

子弹图通过额外的标记来增强单个条形图,以说明如何对条形图的值进行上下文化。这通常意味着一条垂直线显示目标值,但也包括背景阴影以提供额外的性能基准。子弹图通常用于多个指标,并且渲染时比其他更花哨的仪表类型更为紧凑。

基于地图的图表

This choropleth shows how many people live in each state of the United States

根据用途,有许多专门图表类别被分组,但我们将以提及其中一种图表类型来结束本文:基于地图或地理空间的图表。当数据集中的值对应实际地理位置时,用某种地图来绘制它们可能非常有价值。这类地图的一个常见例子是上文中的分级统计图。它采用热图方法通过颜色来描绘值,但与值在网格中绘制不同,它们被填充到地图上的区域中。

要获取更多图表类型及其使用场景的便捷参考指南,请查看我们的免费电子书《如何选择正确的数据可视化》。