自定义联动:选择当人们单击仪表盘中的图表时会发生什么
您可以设置仪表盘部件以将用户导航到仪表盘、保存的问题和URL,并使用仪表盘中的值更新目标仪表盘的筛选器,或参数化指向外部站点的链接。
Metabase提供了一些简单的构建块,允许您自定义当有人单击您的仪表盘。您可以组合这些基元来创建报表路径,仪表盘更新后续仪表盘,甚至发送到外部站点。
在本文中,我们将重点介绍自定义单击行为的选项之一:转到自定义目的地。我们将使用Metabase的示例数据库向你展示自定义目的地工作,并向你展示一些创造互动体验的巧妙技巧。
我们将创建两个快速仪表盘-订单概述仪表盘和产品详细信息仪表盘。下面是我们要创建的用户体验:当有人查看我们的订单概览仪表盘时,他们应该能够单击产品,并让Metabase将他们带到产品详细信息仪表盘,该仪表盘根据用户单击的产品进行更新。一旦用户访问产品详细信息仪表盘,Metabase应该能够根据用户单击的产品类别将其发送到不同的外部URL。
在那之后,我们还将走过去另一个使用SQL问题的例子为了展示自定义目的地是如何将交互式元素添加到仪表盘上的SQL问题中的一个好方法。
如果您已经有自己的仪表盘可供使用,则可以向前跳我们可以定制目的地。
创建订单概述和产品详细信息仪表盘
让我们从构建订单概述仪表盘和添加两个问题。我们将很快通过这一部分-如果你想寻找更详细的信息,请查看我们的文档提问和创建仪表盘:
继续创建一个新的仪表盘,将其命名为Orders Overview,并将其保存在一个有意义的位置。
关于我们的订单,我们会问两个问题:
- 我们的订单是什么样子的?:首先浏览
Orders
表,然后单击“保存”。 - 订单是如何按州划分的?:选择
Orders
表格开始,并按州
在下面的字段用户在侧边栏中。因为我们是按状态汇总的,Metabase生成一个区域地图。一定要保存这个问题。
接下来,我们可以将这些保存的问题添加到新的仪表盘中。在查看空白仪表盘时,单击铅笔图标进入编辑模式,并通过选择+。一旦您添加了这些问题并保存了仪表盘,结果应该如图1所示:
下一步,我们需要产品详细信息仪表盘,最后我们将链接到订单概述。产品详细信息将更详细地查看我们库存中的单个项目,因此我们也将进行整理仪表盘筛选器这样我们就可以根据要检查的产品输入一个ID值。
创建此仪表盘,将其命名为Product Detail并保存。
让我们问两个新问题,我们将添加到这个仪表盘:
- 产品名称是什么?:从
Products
表格,单击可视化,然后选择数量,选择标题
在要显示的字段下拉列表。省省这个问题。 - 有多少订单包括这个产品?:以
Orders
表,并按Product_ID
在Orders
列表。想象一下数量同样,选择Count
在要显示的字段下拉列表,保存问题。
返回到产品详细信息仪表盘。在编辑模式下,添加我们新保存的问题,别忘了我们也需要一个仪表盘过滤器。要添加一个,请单击添加筛选器图标在右上角,然后选择身份证件。为每张部件选择合适的筛选列-我们的产品名片将进行筛选Products.ID
,而我们的订单数量应该会有所增加Orders.Product_ID
。我们将这些问题的可视化设置为数量,这样他们就可以像变量一样工作了,文本部件根据筛选器中的值更改其文本。
图2显示了仪表盘过滤器设置的外观:
点击完成保存你的仪表盘。
现在我们将展示如何链接到外部网站。作为一个例子,我们将使用搜索结果页对于Metabase文档,并搜索用户单击的产品。
以下是完整的单击路径:
订单概述仪表盘→产品详细信息仪表盘→ 外部站点
图3中的GIF显示了实际的单击路径:
自定义单击行为:订单概述仪表盘
我们回到订单概述仪表盘。我们可以为每个问题添加自定义的单击行为部件在这个仪表盘上,让我们集中精力在一张部件上添加一个自定义目的地。假设我们要设置Orders
部件(包含订单表的部件),这样当有人点击Product_ID
列,Metabase将它们发送到产品详细信息页面,并使用Products.ID
用户单击的产品的。
从Orders Overview页面开始,我们将单击铅笔图标进入仪表盘编辑模式。接下来,我们将鼠标悬停在要自定义的部件上。菜单将出现在右上角。单击单击行为图标菜单(它是一个图标,鼠标指针放在一张部件上-参见图4)。
Metabase将滑出一个侧边栏,供您设置当有人单击此表时发生的情况。
我们来了解一下情况(图5):
- 部件网格:自从我们选择单击行为对于Orders部件,Metabase突出显示其点击蓝色标签。我们可以通过单击另一张部件的标签来选择另一张部件上的点击行为。
- 右上:主编辑菜单,包含添加问题、文本框或筛选器的选项。
- 右边栏:用于自定义当前部件的单击行为的选项。
由于我们使用查询生成器来编写订单问题,Metabase将默认的单击行为设置为打开操作菜单,它允许人们钻取数据.
让我们更改单击行为以将人员发送到产品详细信息仪表盘。
表和自定义目的地是一个非常好的组合,因为我们可以为表中的每一列设置不同的自定义目标。在本例中,我们将只为单个列设置单击行为。我们将在订单问题部件上设置一个自定义目的地,以便当人们单击Product_ID
列,Metabase将1)将它们发送到产品详细信息仪表盘,2)通过单击Product_ID
.
我们的选择是(如上图6所示):
- 打开“操作”菜单(对于使用“查询生成器”组合的问题,默认设置)。
- 前往自定义目的地。
- 更新仪表盘筛选器。
我们将选择转到自定义目的地.
Metabase将为自定义目标提供三个选项:
- 仪表盘
- 保存的问题
- URL
把人送到产品详细信息仪表盘,我们将选择仪表盘选项,然后选择产品详细信息仪表盘。
这里有一个检查点(图7):
将值传递到目标
到目前为止我们有产品ID
列设置为转到自定义目的地,我们已将其设置为链接到产品详细信息仪表盘,但我们还没有完全完成此链接的设置。下一步,我们想将值传递到此仪表盘的筛选器。您会在仪表盘上看到可用筛选器的列表。在这种情况下,我们产品详细信息仪表盘只有一个可以将值传递到的筛选器:身份证件.
点击ID,您会注意到,您可以从表中的任何列传递值,而不仅仅是Product_ID
列。但是在我们的例子中,我们将传递Product_ID
列。
Metabase将提供摘要:
在这里,Metabase正在确认我们已经为Product_ID
列到:
- 前往自定义目的地。
- 链接到产品详细信息仪表盘。
- 传递来自
Product_ID
列到ID
过滤器产品详细信息仪表盘。
让我们试试看:从订单概述,我们将单击Product_ID
列,然后Metabase将我们带到产品详细信息仪表盘,带值14
插入ID
过滤器。
自定义目标:URL
接下来,我们将设置产品详细信息当人们点击产品名称部件,Metabase将它们发送到外部站点,并使用部件中的值参数化URL。我们可以将它们发送到任何外部站点,但在本例中,我们将它们发送到Metabase文档的搜索页面,这样您就可以看到实际的参数化(因为阅读我们的文档将使您成为一个更好的人)。
这是仪表盘:
如前所述,我们将进入仪表盘编辑模式,将鼠标悬停在产品名称部件,然后选择单击行为.
我们将看到与之前相同的菜单:
- 打开操作菜单。
- 前往自定义目的地。
- 更新仪表盘筛选器。
我们将选择转到自定义目的地和统一资源定位地址。接下来我们将输入我们的URL,并包括参数通过将它们包装在双大括号中,如这样:{{parameter}}。在这种情况下,我们将使用Title
作为URL中的参数:
https://www.metabase.com/search
?query={{Title}}
您可以查看可以参考的值下拉列表查看可以用作URL中参数的值的完整列表。您可以使用URL中的任何(或全部)值,包括重复使用相同的值。
使用文本框添加导航
除了为仪表盘添加上下文,您可以使用文本部件向仪表盘添加有用的导航链接,例如添加文本部件,将您带回订单概述我们开始的地方。您可以创建文本部件,将文本居中,并使用Markdown创建指向订单概述仪表盘,只是方便读者浏览您的点击路径。以下是使用该链接后仪表盘的外观:
带有SQL问题的自定义目标
我们在上面使用的示例仪表盘仅包括使用Metabase提出的问题查询生成器,但你也可能本机查询希望在仪表盘上进行交互。
让我们从询问并添加一个SQL问题开始产品详细信息仪表盘,这次是关于产品类别的。导航到native query builder后,我们将输入以下SQL问题:
select CATEGORY
from PRODUCTS
where
{{TITLE}} and
{{ID}}
Metabase滑出一个侧栏,您将看到两个变量:Title
和ID
。我们希望此问题在ID或Title字段中输入值时向我们显示产品类别。从下拉列表中,设置变量类型两者都是为了过滤器继续绘制地图Title
变量产品名称
字段和地图ID
到产品.ID
.
您可以通过将示例ID添加到过滤器; 在下面的图13中,我们使用产品ID号34测试它,并运行查询。因为我们的想象是数量,我们看到此产品的类别(小工具)呈现为问题下方的文本:
现在保存问题并将其添加到产品详细信息仪表盘。在编辑模式下,请确保将现有的仪表盘过滤器链接到新部件上,新部件应在ID
我们的新专栏产品类别部件。
接下来,选择单击行为图标在我们的新部件上,您将看到与之前略有不同的菜单:
- 什么都不做
- 转到自定义问题
- 更新仪表盘筛选器
之所以有“什么都不做”选项是因为我们编写了Product category问题的SQL语言,SQL问题不包括操作菜单.
在这里我们给你展示一个巧妙的技巧。如果我们回到Product category问题,我们可以用concat
创建基于筛选器值更新的字符串。
select concat('Category is ', CATEGORY)
from PRODUCTS
where
{{TITLE}} and
{{ID}}
图14。更新了用SQL编写的类别问题。
最后,我们可以像前面那样将自定义目的地设置为一个特定的参数化URL,或者将这张部件链接到另一个仪表盘,该仪表盘包含按产品类别划分的订单统计信息。
扼要重述
我们向您展示了如何设置简单的单击路径,以及如何为本机查询和使用Metabase的查询生成器构建的查询设置自定义目标。但这些示例只显示了一个单击路径。您可以在仪表盘上为每个问题部件自定义行为!例如,您可以创建一个State detail仪表盘,并在美国地图上自定义单击行为,以便Metabase将人员发送到State detail仪表盘,并按单击的状态进行过滤。
使用Metabase的查询生成器生成的问题将默认为操作菜单,该菜单允许用户钻取数据,但对于SQL问题,我们建议定制一个目的地(在有意义的地方)。查看我们的文档了解更多交互式仪表盘.
同步用户属性仅在上可用赞成和企业计划(包括自托管和Metabase云)。
您还可以将用户属性传递到url或目的地过滤器中,允许您为特定用户定制体验。
因此,在数据中设置点击路径,并分享你想出的任何技巧至Metabase中文社区MetabaseCN.net.