使用桑基图
使用桑基图显示从一个类别到另一类别的流程,或从一个阶段到另一阶段的路径。
例如,桑基图可以显示从一个国家/地区移民到另一国家/地区的人数。桑基图表还可以显示网络访问者从公司网站的一个页面转至下一页面的路径,以及期间可能会停留的情况。
桑基图的数据
要在 QuickSight 中创建桑基图,您的数据集应包含一个度量和两个维度(一个维度包含源类别,另一个维度包含目标类别)。
下表是桑基图数据的简单示例。
维度(源) | 维度(目标) | 度量(权重) |
---|---|---|
A |
W |
500 |
A |
X |
23 |
A |
Y |
147 |
以下桑基图是在将维度和度量添加到字段井中时创建的,左侧的 A 节点链接到右侧的 W、Y 和 X 节点。节点间每个链接的宽度由“度量(权重)”列中的值确定。节点会自动排序。
要在 Amazon QuickSight 中创建多级别桑基图,您的数据集仍应包含一个度量和两个维度(一个用于源,一个用于目标),但此时的数据值会有所不同。
下表是有两个阶段的多级别桑基图数据的简单示例。
维度(源) | 维度(目标) | 度量(权重) |
---|---|---|
A |
W |
500 |
A |
X |
23 |
A |
Y |
147 |
W |
Z |
300 |
X |
Z |
5 |
Y |
Z |
50 |
以下桑基图是在将维度和度量添加到字段井中时创建的。图中,左侧的 A 节点链接到中间的 W、Y 和 X 节点,而 W、Y 和 X 节点则链接到右侧的 Z 节点。节点间每个链接的宽度由“度量(权重)”列中的值确定。
使用周期性数据
桑基图使用的数据有时包含周期。例如,假设您正在可视化网站页面之间的用户流量。您可能会发现,进入页面 A 的用户会移动到页面 E,再回到页面 A。整个流程可能类似于 A-E-A-B-A-A-E-A。
当您的数据包含周期时,每个周期中的节点都会在 QuickSight 中重复。例如,若数据包含流程 A-E-A-B-A-E-A,则会创建以下桑基图。
准备桑基图的数据
如果数据集不包含源列或目标列,请准备好要纳入的数据。您可以在创建新数据集或编辑现有数据集时准备好数据。有关创建新数据集并进行准备的更多信息,请参阅创建数据集。有关打开现有数据集以准备数据的更多信息,请参阅编辑数据集。
以下流程使用示例表(如下所示)演示如何在 QuickSight 中准备桑基图的数据。该表包含三列:客户 ID、时间和操作。
客户 ID | 时间 | 操作 |
---|---|---|
1 |
9:05 am |
步骤 1 |
1 |
9:06 am |
步骤 2 |
1 |
9:08 am |
步骤 3 |
2 |
11:44 am |
步骤 1 |
2 |
11:47 am |
步骤 2 |
2 |
11:48 am |
步骤 3 |
要使用这些数据在 QuickSight 中创建桑基图,请先向表中添加源列和目标列。要了解操作方法,请按照以下过程操作。
向表中添加源列和目标列
-
向表添加“步骤编号”列,对每行进行编号或排序。
有多种方法可以计算“步骤编号”列。如果数据来源与 SQL 兼容,并且数据库支持
ROW_NUMBER
或RANK
函数,您可以在 QuickSight 中使用自定义 SQL 对“步骤编号”列中的行进行排序。有关在 QuickSight 中使用自定义 SQL 的更多信息,请参阅使用 SQL 自定义数据。客户 ID 时间 操作 步骤编号 1
9:05 am
步骤 1
1
1
9:06 am
步骤 2
2
1
9:08 am
步骤 3
3
2
11:44 am
步骤 1
1
2
11:47 am
步骤 2
2
2
11:48 am
步骤 3
3
-
向表添加“下一行编号”列,其值等于步骤编号加一。
例如,在表的第一个数据行中,“步骤编号”的值为 1。要计算该行的“下一步编号”的值,请在该值上加 1。
1 + 1 = 2
在表的第二个数据行中,“步骤编号”的值为 2,因此“下一步编号”的值为 3。
2 + 1 = 3
客户 ID 时间 操作 步骤编号 下一步编号 1
9:05 am
步骤 1
1
2
1
9:06 am
步骤 2
2
3
1
9:08 am
步骤 3
3
4
2
11:44 am
步骤 1
1
2
2
11:47 am
步骤 2
2
3
2
11:48 am
步骤 3
3
4
-
将表自身联接起来:
-
联接类型选择内部。
-
对于联接子句,请执行以下操作:
-
选择客户 ID = 客户 ID
-
选择下一步编号 = 步骤编号
-
有关在 QuickSight 中联接数据的更多信息,请参阅联接数据。
联接两个表会为“客户 ID”、“时间”、“操作”、“步骤编号”和“下一步编号”创建两列。联接左侧表中的列为源列。联接右侧表中的列为目标列。
-
-
(可选)通过重命名列指明源列和目标列。
以下是 示例:
-
将左侧的操作列重命名为源。
-
将右侧的操作 [复制]列重命名为目标。
-
将左侧的时间列重命名为开始时间。
-
将右侧的时间 [复制]列重命名为结束时间。
数据现已做好可视化的准备。
-
创建桑基图
要创建桑基图,请按照以下过程操作。
创建桑基图
-
在分析屏幕上,选择左侧工具栏上的可视化。
-
在应用程序栏上选择添加,然后选择添加视觉对象。
-
在视觉对象类型窗格中,选择桑基图的图标。
-
从视觉对象右上角的菜单上,选择属性图标。
在属性窗格中,选择源或目标部分。
自定义节点数
要自定义桑基图中显示的节点数,请按照以下过程操作。QuickSight 最多支持 100 个源/目标节点。
自定义桑基图中显示的节点数
-
在分析页面上,选择要设置格式的桑基图视觉对象。
-
从视觉对象右上角的菜单中选择设置视觉对象格式图标。
-
在打开的属性窗格中,选择源或目标选项卡。
-
在显示的节点数字段中输入数字。
图中的节点数将更新为您指定的数字。靠前的节点将自动显示。其余节点则归入其他类别。
注意
指定源节点的数量可以控制图中可显示的源节点总数。指定目标节点的数量可以控制每个源节点可显示的目标节点数。这表示,如果图中有多个源节点,则目标节点的总数将大于指定的数量。
QuickSight 最多支持 100 个源/目标节点。
例如,以下桑基图的源节点数限制为三个(共五个),因此图中显示了前三个源节点。另外两个源节点归入“其他”类别。
要从图中移除其他类别,请在视图中将其选中,然后选择隐藏“其他”类别。
桑基图的功能
要了解桑基图支持的功能,请参考下表内容。
功能 | 支持? | 有关更多信息 |
---|---|---|
更改图例显示 | 否 | |
更改标题显示 | 是 | QuickSight 中视觉对象类型的标题和副标题 |
更改轴范围 | 否 | |
改变视觉对象颜色 | 否 | |
聚焦或排除元素 | 是 | |
排序 | 否 | |
执行字段聚合 | 是 | 更改字段聚合 |
添加向下钻取 | 否 | |
条件格式设置 | 否 |