筛选器限制仪表板可视化效果中显示的数据,以便用户可以专注于满足特定条件的数据。 本页介绍可用的筛选器类型以及如何使用它们。
筛选器交互性和范围
仪表板作者可以将筛选器配置为交互式筛选器,使查看者能够动态或静态地调整值,其中仪表板作者预定义了筛选器值。 交互式筛选器允许仪表板查看者在相关可视化效果中选择数据集值。 仪表板编辑工具配置静态筛选器值,并只将其应用于配置它们的小组件,从而使多个小组件显示同一数据集的不同视图。
仪表板筛选器在不同范围内运行,每个范围都有特定的特征:
全局筛选器: 在仪表板中应用于所有页面的交互式筛选器,用于共享一个或多个数据集的可视化效果。 查看者可以动态调整这些值,更改会影响整个仪表板。 请参阅 全局筛选器。
页面级筛选器: 应用于共享一个或多个数据集的同一页上的所有可视化效果的交互式筛选器小组件。 查看者可以修改这些值以更改该特定页面的视图。
小组件级筛选器: 仅适用于配置它们的单个可视化小组件的静态筛选器。 仪表板作者使用查看者无法更改的值设置筛选器。 这些过滤器在不同的小组件中创建同一数据集的独特视图。
钻取: 一种交互式导航方法,允许用户单击图表元素以打开目标页面,其中筛选器会根据选择自动填充。 请参阅 “使用钻取”筛选数据。
动态筛选栏
仪表板上的所有活动筛选器显示在仪表板顶部附近的活动筛选器栏中。 此栏中会显示任何未设置为 “全部” 的筛选器(全局或页面级别),以及任何交叉筛选。 活动筛选器栏显示所有全局筛选器和页面级筛选器及其值,无论该值是由用户设置还是从默认值继承。
筛选应用程序行为
默认情况下,当查看器从下拉菜单中选择值时,筛选器将立即应用。 仪表板作者可以将筛选器配置为仅在查看器单击 “应用 ”按钮时应用,允许查看者在更新仪表板之前选择多个筛选值。 若要配置筛选器应用程序行为,请参阅 “配置筛选器应用程序行为”。
复制和粘贴筛选器
可以在画布和全局筛选器面板之间复制和粘贴筛选器,以便快速重新组织仪表板布局:
- 在画布或全局过滤面板中选择过滤器部件。
- 右键单击并选择Cut或Copy或使用键盘快捷方式(Windows/Linux、Cmd+X 或 macOS 上的 Ctrl+X 或 Cmd+C)。
- 右键单击全局筛选器面板或页面画布上的空白空间。
- 选择Paste或使用键盘快捷方式(macOS Windows 上的 Ctrl+V、macOS 上的 Cmd+V)。
此功能仅适用于同一仪表板。 不能在不同的仪表板之间复制过滤器。
全局筛选器
若要查看所有全局筛选器,请单击 。仪表板左上角的筛选器图标。 仪表板右侧将打开一个面板。
创建全局筛选器:
单击仪表板画布左上角的
单击 +。 筛选器配置面板在画布右侧打开。
就像设置其他交互式筛选器小组件一样设置筛选器。 要查看设置过滤器小组件的示例,请参阅仪表板过滤器类型。
注释
当发布打开全局筛选器面板的仪表板时,当查看者首次加载已发布的仪表板时,面板将保持打开状态。
过滤器控件
筛选器小组件是交互式元素,允许查看者在数据集字段和参数上调整页面级过滤器的值。
创建筛选器小部件:
单击
添加筛选器(字段/参数) 以添加筛选器小组件。 然后,将筛选器放在仪表板画布中的页面上。 选择筛选器,并在屏幕右侧打开配置面板。
打开 小组件标题 以显示小组件中的标题字段。 编辑组件上的标题。
打开 说明。
在配置面板中的 “筛选器 ”下拉菜单中,选择 “日期范围选取器”。
单击“
“ 字段 ”菜单旁边的加号图标。 从下拉菜单中单击 tpep_pickup_datetime 。
注释
基于查询的参数在单个小组件中结合了字段筛选器和参数筛选器。 有关详细信息,请参阅 基于查询的参数。
设置默认筛选器值
当刷新仪表板而不选择新的筛选值时,使用默认值。 要设置默认值,请从筛选器小组件的配置设置的“默认值”下拉列表中选择一个值。
筛选器应用于整个数据集。 对于小型数据集,筛选器在浏览器中应用以优化性能。 如果数据集较大,则会将筛选器添加到在 SQL 仓库中运行的查询。 请参阅数据集优化和缓存。
是否应筛选字段或参数?
对于相对较小的数据集,字段筛选器通常比参数更高效,因为Azure Databricks在浏览器中应用它们,而无需重新运行查询。
参数在运行时替换值,并且始终要求关联的查询重新运行。 但是,参数可以为查询优化提供更大的灵活性。 字段筛选器将 SQL 包装在公共表表达式(CTE)中,并在查询末尾应用,在某些情况下效率较低。
使用参数,可以在查询中的任意位置放置筛选条件,例如联接之前,而不是在联接之后。 这种灵活性使你可以根据数据结构和访问模式优化查询性能。 例如,在联接之前进行筛选会显著减少联接作期间处理的数据。
下表将直接对数据集字段进行筛选与使用参数进行筛选进行比较。
| 筛选类型 | 说明 | 性能 | 多功能性 |
|---|---|---|---|
| 对字段进行筛选 | 直接应用于数据集字段,而无需修改数据集。 | 通常更快。 可以在浏览器中筛选小型数据集。 通过重新运行查询并应用筛选条件来筛选大型数据集。 请参阅数据集优化和缓存。 | 仅限于筛选解析的数据集结果。 不能在子查询或自定义条件逻辑中使用。 |
| 对参数进行筛选 | 在运行时将值直接插入到数据集查询中。 | 每当参数值发生更改时,都需要重新运行查询。 | 可用于子查询、条件逻辑或修改查询结构。 |
筛选器类型
字段和参数筛选器支持各种筛选器类型:
有关如何配置不同筛选器类型的示例,请参阅 仪表板筛选器类型。
已发布仪表板 URL 中的筛选器
已发布的仪表板将字段筛选器和参数选择存储在 URL 中。 这样,用户就可以使用特定筛选器配置为仪表板添加书签或共享。 当用户打开 URL 时,仪表板会加载已应用这些筛选器值。
筛选器标识符不存储为命名值。 每个筛选器由页面 name 值和小组件 name 值的组合标识,用波形符(~)分隔。 这些值默认自动生成。 筛选器标识符和值作为 URL 的一部分被传递,以使用指定的筛选器加载仪表板。
注释
name 键显示在定义仪表板的序列化文件中,并且无法从 Azure Databricks UI 访问。 它与 "displayName" 值分开,该值定义 UI 中显示的页面名称。 请参阅 “编辑仪表板”文件。
以下示例显示了具有所选筛选器值的仪表板 URL 的结构:
<databricks-instance>/dashboardsv3/<dashboard-id>/published?o=<workspace-id>&f_<page-name>~<widget-name>=<filter-value>
- URL 的第一部分标识已公布的仪表板。 请参阅仪表板 URL 和 ID。
- 标识筛选器的部分以
f_开头,然后是page-name和widget-name,由波浪号(~)分隔。 - 等号(
=)右侧的值是所选的筛选器值。
创建仪表板时,page-name值和widget-name值自动生成。 可以在序列化 lvdash.json 文件中编辑这些名称。 名称在导入、导出和重新发布等操作中保留。 请参阅 “编辑仪表板”文件。
在 URL 中访问和设置筛选器值
以下示例显示了包含所选筛选器值的已发布仪表板的 URL:
<databricks-instance>/dashboardsv3/<dashboard-id>/published?o=<workspace-id>&f_53eadf26~3490f286=10013
此示例引用的仪表板包含三个筛选器:时间范围、取件邮编和投递邮编。 仅为“取件邮编”筛选器分配了值。 在 URL 中,它已设置为 10013 使用标识符 f_53eadf26~3490f286。
若要创建类似于此示例中使用的仪表板,请参阅 “创建仪表板”。
在 URL 中指定相对日期范围值
如果使用相对时间筛选器(例如 过去 5 分钟 或 过去 12 小时),则相应的值将显示在 URL 中。
以下示例显示了一个 URL,其中选择了 “过去 12 小时 ”。
<databricks-instance>/dashboardsv3/<dashboard-id>/published?o=<workspace-id>&f_53eadf26~3490f286=now-12h
在这种情况下,筛选器标识符 f_53eadf26~3490f286 设置为相对值 now-12h。
应用交叉筛选
浏览仪表板时,可能会注意到想要进一步调查的特定趋势或值。 通过交叉筛选,查看者可以通过直接与可视化效果交互来筛选仪表板数据。 这有助于浏览现有筛选器可能无法捕获的数据,并且有助于在不手动编辑筛选器控件的情况下浏览模式、离群值或特定段。
可以使用交叉筛选来:
- 通过选择一个或多个图表中的值来关注特定数据段。
- 通过单击聚合值深入查看分层数据。 例如,单击条形图中的年份可按该年份筛选其他可视化效果。 然后单击月份或周,以便继续缩小范围。
交叉筛选会自动应用于使用相同数据集的受支持可视化效果。
以下图表类型支持交叉筛选:
- 酒吧
- 箱形图
- 热力图
- 直方图
- 馅饼
- 散点图
- 点图
通过选择图表元素应用筛选器时,基于同一数据集的所有其他可视化效果都会自动更新以反映筛选的数据。
筛选相关可视化内容
使用交叉筛选功能探索数据:
- 在可视化图表中单击一个数据点,例如条形图中的一个条形或热力图中的一个单元格。
- 仪表板应用基于所选值的筛选器。
共享相同数据集的所有其他可视化效果会相应地更新。
有关导航至不同页面并使用已预填筛选器的高级筛选流程,请参阅使用钻取来筛选数据。
使用钻取来筛选数据
通过穿透,您可以构建报表,使查看者能够单击特定数据段,打开已根据他们的选择筛选的目标页面。 当目标页面打开时,将自动筛选基于与源选择相同的数据集的任何可视化效果。 如果目标页包含基于同一数据集的筛选器,则这些筛选器会自动填充源可视化效果中的所选段。
以下图表类型支持钻取:
- 酒吧
- 箱形图
- 热力图
- 直方图
- 馅饼
- 散点图
- 点图
支持的下钻选择类型和筛选器类型
源图表必须包含与所应用筛选器中的数据类型匹配的数据类型。 例如,数值数据必须具有数值筛选器。
下表概述了兼容的选择类型和筛选器类型:
| 源数据选择类型 | 目标筛选器类型 |
|---|---|
| 跨多个分类维度的单选 |
|
| 跨多个定量维度的单项选择 |
|
| 一个分类维度中的多选 | 多值下拉列表 |
| 在一个定量维度中进行多项选择 | 多值下拉列表 |
| 在按日期分组的时间值中进行单选 | 日期范围筛选器 |
注释
启用日期字段钻取时,请使用日期转换(如 DAILY)来确保值被识别为日期。 当日期字段使用分类刻度且不进行任何变换显示时,钻取可能无法按预期工作,尤其是当基础字段为日期时间而非仅为日期时,因为钻取要求精确匹配数值。
尚不支持以下钻取事例:
- 具有多个分类维度的多重选择。
- 具有多个定量维度的多重选择。
- 具有多组按日期分类的时间值的多重选择。
使用钻取功能
要将钻取功能设置为仪表板作者,请按以下步骤操作:
使用以下代码片段为示例可视化效果创建数据集。 将所有 行程命名为数据集。
SELECT DATE(tpep_pickup_datetime) AS trip_date, HOUR(tpep_pickup_datetime) AS pickup_hour, COUNT(*) AS trip_count, ROUND(AVG(trip_distance), 2) AS avg_distance, ROUND(AVG(fare_amount), 2) AS avg_fare FROM samples.nyctaxi.trips GROUP BY trip_date, pickup_hour ORDER BY trip_date;在画布上,将默认页面命名为 “概述”。
使用以下配置创建可视化效果。
- 数据集: 所有行程
- 可视化效果: 条形图
- X 轴: DAILY(trip_date)
- Y 轴: SUM(avg_fare)
创建新页面并将其命名为 “详细信息”。
单击
。创建筛选器并将其放置在页面顶部。
将标题更改为 “行程日期”。
使用配置面板设置以下值:
- 筛选器: 日期范围选取器
- 字段:所有行程.trip_date
使用以下配置创建可视化效果:
- 数据集: 所有行程
- 可视化效果: 表
- 列:选择 “全部显示/隐藏”
若要作为仪表板查看器钻取至目标页面,请执行以下操作:
- 右键单击源图表中的数据段。
- 单击钻取到,然后选择要访问的页面名称。