可视化效果类型

本文概述了可在 Azure Databricks 笔记本中以及可在 Databricks SQL 中使用的可视化效果类型,并介绍了如何创建每个可视化类型的示例。

注意

要了解 AI/BI 仪表板可用的可视化类型,请参阅仪表板可视化类型

条形图

条形图表示指标随时间的变化或显示比例关系,类似于 饼图 图表。

注意

条形图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

条形图示例

配置值:对于此条形图可视化效果,已设置以下值:

  • X 列:
    • 数据集列:o_orderdate
    • 日期级别:Months
  • Y 列:
    • 数据集列:o_totalprice
    • 聚合类型:Sum
  • 分组依据(数据集列):o_orderpriority
  • 叠加:Stack
  • X 轴名称(替代默认值):Order month
  • Y 轴名称(替代默认值):Total price

配置选项:有关条形图配置选项,请参阅图表配置选项

SQL 查询:对于此条形图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.orders

折线图

折线图表示一个或多个指标随时间的变化。

注意

折线图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

折线图示例

配置值:对于此折线图可视化效果,已设置以下值:

  • X 列:
    • 数据集列:o_orderdate
    • 日期级别:Years
  • Y 列:
    • 数据集列:o_totalprice
    • 聚合类型:Average
  • 分组依据(数据集列):o_orderpriority
  • X 轴名称(替代默认值):Order year
  • Y 轴名称(替代默认值):Average price

配置选项:有关折线图配置选项,请参阅图表配置选项

SQL 查询:对于此折线图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.orders

面积图

面积图组合折线图和条形图,以显示一个或多个组的数值如何在第二个变量的进度(通常是时间)内发生变化。 面积图通常用于显示销售漏斗图随时间的变化。

注意

面积图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

面积图示例

配置值:对于此面积图可视化效果,已设置以下值:

  • X 列:
    • 数据集列:o_orderdate
    • 日期级别:Years
  • Y 列:
    • 数据集列:o_totalprice
    • 聚合类型:Sum
  • 分组依据(数据集列):o_orderpriority
  • 叠加:Stack
  • X 轴名称(替代默认值):Order year
  • Y 轴名称(替代默认值):Total price

配置选项:有关面积图配置选项,请参阅图表配置选项

SQL 查询:对于此面积图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.orders

饼图

饼图显示指标之间的比例关系。 它们不是用来传输时序数据的。

注意

饼图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

饼图示例

配置值:对于此饼图可视化效果,已设置以下值:

  • X 列(数据集列):o_orderpriority
  • Y 列:
    • 数据集列:o_totalprice
    • 聚合类型:Sum
  • 标签(替代默认值):Total price

配置选项:有关饼图配置选项,请参阅图表配置选项

SQL 查询:对于此饼图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.orders

直方图

直方图绘制给定值在数据集中出现的频率。 直方图可帮助你了解数据集的值是聚集在少数范围内还是分布范围更广。直方图显示为条形图,你可以在其中控制不同条形(也称为“箱”)的数量。

注意

直方图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

直方图示例

配置值:对于此直方图可视化效果,已设置以下值:

  • X 列(数据集列):o_totalprice
  • 箱数:20
  • X 轴名称(替代默认值):Total price

配置选项:有关直方图配置选项,请参阅直方图配置选项

SQL 查询:对于此直方图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.orders

热度地图

热度地图融合了条形图、叠加图和气泡图的功能,支持使用颜色可视化数值数据。 热度地图的常用调色板使用橙色或红色等较暖颜色显示最高值,使用蓝色或紫色等较冷颜色显示最低值。

例如,考虑下面的热度地图,它显示了每天最频繁出现的出租车乘坐距离,并按星期、距离和总费用对结果进行分组。

注意

热度地图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

热度地图示例

配置值:对于此热度地图可视化效果,已设置以下值:

  • X 列(数据集列):o_orderpriority
  • Y 列(数据集列):o_orderstatus
  • 颜色列:
    • 数据集列:o_totalprice
    • 聚合类型:Average
  • X 轴名称(替代默认值):Order priority
  • Y 轴名称(替代默认值):Order status
  • 配色方案(替代默认值):YIGnBu

配置选项:有关热度地图配置选项,请参阅热度地图配置选项

SQL 查询:对于此热度地图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.orders

散点图

散点可视化效果通常用于显示两个数值变量之间的关系。 此外,可以使用颜色对第三个维度进行编码,以显示数值变量在不同组之间的差异。

注意

散点图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

散点图

配置值:对于此散点图可视化效果,已设置以下值:

  • X 列(数据集列):l_quantity
  • Y 列(数据集列):l_extendedprice
  • 分组依据(数据集列):l_returnflag
  • X 轴名称(替代默认值):Quantity
  • Y 轴名称(替代默认值):Extended price

配置选项:有关散点图配置选项,请参阅图表配置选项

SQL 查询:对于此散点图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.lineitem

气泡图

气泡图是每个点标记的大小反映相关指标的散点图。

注意

气泡图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

气泡图示例

配置值:对于此气泡图可视化效果,已设置以下值:

  • X(数据集列):l_quantity
  • Y 列(数据集列):l_extendedprice
  • 分组依据(数据集列):l-returnflag
  • 气泡大小列(数据集列):l_tax
  • 气泡大小系数:20
  • X 轴名称(替代默认值):Quantity
  • Y 轴名称(替代默认值):Extended price

配置选项:有关气泡图配置选项,请参阅图表配置选项

SQL 查询:对于此气泡图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.lineitem

箱线图

箱形图可视化效果显示数值数据的分布摘要(可以选择按类别分组)。 通过使用箱形图可视化效果,可以快速地跨类别比较值的范围,并通过其四分位数可视化值的位置、范围和偏斜组。 在每个箱中,较暗的线显示四分位数之间的范围。

注意

箱形图仅支持最多对 64000 行进行聚合。 如果数据集大于 64000 行,数据将被截断。

箱线图示例

配置值:对于此箱形图可视化效果,已设置以下值:

  • X 列(数据集列):l-returnflag
  • Y 列(数据集列):l_extendedprice
  • 分组依据(数据集列):l_shipmode
  • X 轴名称(替代默认值):Return flag1
  • Y 轴名称(替代默认值):Extended price

配置选项:有关箱形图配置选项,请参阅箱形图配置选项

SQL 查询:对于此箱形图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.lineitem

组合图

组合图结合折线图条形图,以按比例呈现随时间的变化。

注意

组合图支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。

组合图示例

配置值:对于此组合图可视化效果,已设置以下值:

  • X 列(数据集列):l_shipdate
  • Y 列:
    • 第一个数据集列:l_extendedprice
    • 聚合类型:平均值
    • 第二个数据集列:l_quantity
    • 聚合类型:平均值
  • X 轴名称(替代默认值):Ship date
  • 左 Y 轴名称(替代默认值):Quantity
  • 右 Y 轴名称(替代默认值):Average price
  • 序列:
    • 顺序 1(数据集列):AVG(l_extendedprice)
    • Y 轴:右
    • 类型:折线图
    • 顺序 2(数据集列):AVG(l_quantity)
    • Y 轴:左
    • 类型:条形图

配置选项:有关组合图配置选项,请参阅图表配置选项

SQL 查询:对于此组合图可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.lineitem

队列分析

队列分析会检查预定义组(称为队列)在一系列阶段中的进展结果。 队列可视化效果仅按日期聚合(它支持按月聚合)。 它不会对结果集内的数据执行其他聚合。 所有其他聚合都在查询本身内完成。

队列示例

配置值:对于此队列可视化效果,已设置以下值:

  • 日期(Bucket)(数据库列):cohort_month
  • 阶段(数据库列):months
  • Bucket 填充大小(数据库列):size
  • 阶段值(数据库列):active
  • 时间间隔:monthly

配置选项:有关队列配置选项,请参阅队列图表配置选项

SQL 查询:对于此队列可视化效果,以下 SQL 查询用于生成数据集

-- match each customer with its cohort by month
with cohort_dates as (
  SELECT o_custkey, min(date_trunc('month', o_orderdate)) as cohort_month
  FROM samples.tpch.orders
  GROUP BY 1
),
-- find the size of each cohort
cohort_size as (
  SELECT cohort_month, count(distinct o_custkey) as size
  FROM cohort_dates
  GROUP BY 1
)
-- for each cohort and month thereafter, find the number of active customers
SELECT
  cohort_dates.cohort_month,
  ceil(months_between(date_trunc('month', samples.tpch.orders.o_orderdate), cohort_dates.cohort_month)) as months,
  count(distinct samples.tpch.orders.o_custkey) as active,
  first(size) as size
FROM samples.tpch.orders
  left join cohort_dates on samples.tpch.orders.o_custkey = cohort_dates.o_custkey
  left join cohort_size on cohort_dates.cohort_month = cohort_size.cohort_month
WHERE datediff(date_trunc('month', samples.tpch.orders.o_orderdate), cohort_dates.cohort_month) != 0
GROUP BY 1, 2
ORDER BY 1, 2

计数器显示

计数器突出显示单个值,并带有将它们与目标值进行比较的选项。 若要使用计数器,请指定要在计数器可视化效果中为“值列”和“目标列”显示哪一行数据。

注意

当前仅支持最多对 64000 行进行聚合。 如果数据集大于 64000 行,数据将被截断。

计数器示例

配置值:对于此计数器可视化效果,已设置以下值:

  • 值列
    • 数据集列:avg(o_totalprice)
    • 行 1:
  • 目标列:
    • 数据集列:avg(o_totalprice)
    • 行 2:
  • 设置目标值的格式:启用

SQL 查询:对于此计数器可视化效果,以下 SQL 查询用于生成数据集

select o_orderdate, avg(o_totalprice)
from samples.tpch.orders
GROUP BY 1
ORDER BY 1 DESC

漏斗图可视化效果

漏斗图可视化效果有助于分析指标在不同阶段的变化。 若要使用漏斗图,请指定 stepvalue 列。

注意

漏斗图仅支持最多对 64000 行进行聚合。 如果数据集大于 64000 行,数据将被截断。

漏斗图示例

配置值:对于此漏斗图可视化效果,已设置以下值:

  • 步骤列(数据集列):o_orderstatus
  • 值列(数据集列):Revenue

SQL 查询:对于此漏斗图可视化效果,以下 SQL 查询用于生成数据集

SELECT o_orderstatus, sum(o_totalprice) as Revenue
FROM samples.tpch.orders
GROUP BY 1

等值线图可视化效果

在等值线图可视化效果中,地理区域(如国家/地区或州)根据每个键列的聚合值着色。 查询必须按名称返回地理位置。

注意

等值线图可视化效果不会对结果集内的数据进行任何聚合。 所有聚合都必须在查询本身内计算。

地图分级着色示例

配置值:对于此等值线图可视化效果,已设置以下值:

  • 映射(数据集列):Countries
  • 地理列(数据集列):Nation
  • 地理类型:短名称
  • 值列(数据集列):revenue
  • 聚类分析模式:等距

配置选项:有关等值线图配置选项,请参阅等值线图配置选项

SQL 查询:对于此等值线图可视化效果,以下 SQL 查询用于生成数据集

SELECT
initcap(n_name) as Country,
sum(c_acctbal)
FROM samples.tpch.customer
join samples.tpch.nation where n_nationkey = c_nationkey
GROUP BY 1

标记地图可视化效果

在标记可视化效果中,标记放置在地图上的一组坐标处。 查询结果必须返回经纬度对。

注意

标记不会对结果集内的数据执行任何聚合。 所有聚合都必须在查询本身内计算。

地图标记示例

此标记示例是从包含纬度和经度值的数据集生成的,这些值在 Databricks 示例数据集内未提供。 有关等值线图配置选项,请参阅标记配置选项

透视表可视化效果

透视表可视化效果会将查询结果中的记录聚合到新的表格显示中。 它类似于 SQL 中的 PIVOTGROUP BY 语句。 使用拖放字段来配置数据透视表可视化效果。

注意

透视表支持后端聚合,并为返回超过 64K 行数据的查询提供支持,而不截断结果集。 但是,数据透视表(旧)仅支持最多对 64000 行进行聚合。 如果数据集大于 64000 行,数据将被截断。

透视表示例

配置值:对于此透视表可视化效果,已设置以下值:

  • 选中行(数据集列):l_retkurnflag
  • 选中列(数据集列):l_shipmode
  • 单元
    • 数据集列:l_quantity
    • 聚合类型:Sum

SQL 查询:对于此透视表可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.lineitem

桑基图

桑基图将一组值到另一组值的流动可视化。

注意

桑基图可视化效果不会对结果集内的数据进行任何聚合。 所有聚合都必须在查询本身内计算。

桑基图示例

SQL 查询:对于此 Sankey 可视化效果,以下 SQL 查询用于生成数据集

SELECT pickup_zip as stage1, dropoff_zip as stage2, sum(fare_amount) as value
FROM samples.nyctaxi.trips
GROUP BY 1, 2
ORDER BY 3 DESC
LIMIT 10

旭日序列

旭日图可帮助使用同心圆可视化分层数据。

注意

旭日序列不会对结果集内的数据执行任何聚合。 所有聚合都必须在查询本身内计算。

旭日图示例

SQL 查询:对于此旭日图可视化效果,以下 SQL 查询用于生成数据集

SELECT pickup_zip as stage1, dropoff_zip as stage2, sum(fare_amount) as value
FROM samples.nyctaxi.trips
GROUP BY 1, 2
ORDER BY 3 DESC
LIMIT 10

表可视化效果在标准表中显示数据,但可以手动对数据进行重新排序、隐藏和设置格式。 请参阅表选项

注意

表可视化效果不会对结果集内的数据进行任何聚合。 所有聚合都必须在查询本身内计算。

有关表配置选项,请参阅表配置选项

词云图

词云图直观表示某个单词在数据中出现的频率。

注意

词云图仅支持最多对 64000 行进行聚合。 如果数据集大于 64000 行,数据将被截断。

词云图示例

配置值:对于此词云可视化效果,已设置以下值:测试

  • 词列(数据集列):o_comment
  • 词长度限制:5
  • 频率限制:2

SQL 查询:对于此词云可视化效果,以下 SQL 查询用于生成数据集

select * from samples.tpch.orders