仪表板交互
您可以自定义用户点击仪表板中问题时的行为。
默认情况下,当您使用 Metabase 的图形查询构建器创建图表时,您的图表会自动具备下钻功能,允许用户点击图表以进行进一步探索。但如果您有更自定义的点击路径,Metabase 允许您自定义用户点击仪表板中图表或表格时的行为。
您可以设置仪表板卡片以实现
要配置此交互性,您将使用仪表板卡片上的点击行为选项。
自定义点击行为
在您的仪表板中,首先点击铅笔图标进入仪表板编辑模式。
如果您将鼠标悬停在包含您想要自定义的问题的卡片上,Metabase 将在该卡片的右上角显示一个菜单,包含以下选项,从左到右依次为
- 可视化选项:此图标看起来像一个调色板。
- 点击行为:这是带有鼠标光标点击卡片的图标。
- 添加系列:如果您的问题具有可以添加额外系列(如折线图或柱状图)的可视化,您将看到此图标为该图表类型的小型表示旁边的一个 + 号。并非所有卡片都会显示此选项。
- 移除:此图标是一个 X。选择此选项将从仪表板中移除您的问题。
选择点击行为选项。
Metabase 将滑出点击行为侧边栏
对于使用查询构建器编写的问题,您可以选择三个选项
- 打开 Metabase 下钻菜单。
- 前往自定义目的地。
- 更新仪表板筛选器(如果仪表板有筛选器)。
SQL 问题将只有前往自定义目的地和更新仪表板筛选器的选项。
如果您的仪表板有筛选器,您还会看到一个更新筛选器的选项。
打开下钻菜单
对于使用查询构建器编写的问题,默认的点击行为是打开下钻菜单,该菜单会向用户提供下钻数据的选项。
自定义目的地
您可以为所有问题(包括 SQL 问题)设置自定义目的地。
可能的目的地包括
- 仪表板
- 已保存的问题
- URL
内部 Metabase 目的地(仪表板或已保存的问题)将在同一浏览器标签页或窗口中加载。外部 URL 将在新标签页或窗口中打开。
将值传递到目的地
如果您链接到带有筛选器的仪表板或 SQL 问题,您可以将当前仪表板中的值传递给目标地点的筛选器。
例如,如果您链接到具有 Category
筛选器的仪表板,您可以将 Category
的值从源问题传递到目标仪表板
一旦您选择了包含要传递的值的列,侧边栏将显示用于传递值的列,以及 Metabase 将值传递到的目标筛选器。
在上面的示例中,当用户点击按产品类别排序的订单卡片时,Metabase 将把点击的 Product -> Category
传递到目标仪表板(“交互式仪表板”),然后该仪表板将根据该 Category
筛选其卡片。
您还可以将当前仪表板上仪表板筛选器的当前选定值发送到目的地。在某些方案中,您也可以将 SSO 提供的用户属性传递到目的地。当您点击目的地的某个筛选器时,这些用户属性将显示为选项(前提是这些值与该筛选器兼容)。
当以表格形式显示问题时,您可以为表格中不同列选择不同的点击行为。您还可以修改给定列中单元格的内容,将值替换为自定义文本。例如,如果您的某一列列出了类别,您可以将单元格中的文本更改为:“点击查看 {{Category}} 的详细信息”,其中 Category
是您列的名称。
您还可以使用值来构建指向外部资源的 URL。
从点击行为侧边栏中,选择前往自定义目的地并链接到URL。将弹出输入要链接的 URL 模态框,允许您指定 URL 以及列或仪表板筛选器。
我们在这里需要做的是输入用户点击卡片中某个值时应前往的完整 URL。但我们真正强大的功能是可以在 URL 中包含变量。这些变量会将用户点击的值插入到 URL 中。
例如,我们可以输入这样的 URL
https://metabase.net.cn/search.html?query={{Category}}
重要的部分是 {{Category}}
。我们在这里引用的是用户点击的 Category
。因此,如果有人点击我们图表中的 Widget
条,该条的 Category
列的值(Widget
)将被插入到我们的 URL 中:https://metabase.net.cn/search.html?query=Widget
。您的 URL 可以使用任意数量的列变量——您甚至可以在 URL 的不同部分多次引用同一列。要查看可以在 URL 中包含哪些变量,请点击下拉菜单可引用的值。
接下来,我们将点击完成,然后保存我们的仪表板。现在,当我们点击图表时,我们将被带到上面输入的 URL,其中包含了点击的条形值。
要了解更多信息,请查看自定义目的地:选择用户点击仪表板中图表时的行为。
使用图表筛选仪表板
如果您的仪表板包含至少一个筛选器,您可以进行设置,以便点击仪表板中的图表时会更新筛选器。
当用户点击柱状图中的某个条形时,您可以将点击的条形值发送到筛选器,并更新整个仪表板上的卡片。我们将此功能称为交叉筛选。您可以使用此交叉筛选功能使图表表现为一种“导航问题”,从而筛选其他卡片中的数据。
例如,点击 Widget
条形将更新当前仪表板的类别筛选器,以筛选 Widget
。
要设置交叉筛选,请选择一个您希望在点击时更新的仪表板筛选器,以及一个用于更新该筛选器的问题。您可以将此问题视为您的“导航问题”。与其将此导航问题连接到筛选器,不如将仪表板上的所有其他问题连接到筛选器。
下面,我们将使用按产品类别排序的订单问题作为我们的导航问题,因此我们将此问题与筛选器断开连接,并将所有其他问题连接到类别筛选器。
连接好筛选器后,保持在仪表板编辑模式下,将鼠标悬停在您想要用作导航问题以筛选仪表板的问题上。点击点击行为图标,然后选择更新仪表板筛选器。
Metabase 将列出您可以更新的筛选器。在这里,我们选择类别筛选器,并从问题的 Product -> Category
列向该筛选器提供值。
点击侧边栏中的完成,然后保存您的仪表板。
现在,我们可以使用导航问题(按产品类别排序的订单)来交互式筛选整个仪表板上的数据。当用户点击导航问题中的某个值时,Metabase 会将点击的值发送到筛选器,并通过按点击值筛选来更新仪表板上的所有卡片——除了导航问题本身:按产品类别排序的订单。我们不希望导航问题更新的原因是,这样我们就可以点击其他条形来用不同的值更新筛选器。
要了解更多信息,请查看交叉筛选:使用图表更新仪表板筛选器。
阅读其他Metabase 版本的文档。