向视图嵌入代码中添加筛选器
Tableau Server 2022.3 及更高版本以及 Tableau Cloud 的嵌入代码已更改为使用嵌入 API v3。有关筛选的最新信息,请参见嵌入 API 帮助中的筛选视图。本主题中的信息适用于嵌入的早期版本(使用 Tableau JavaScript API v1 和 v2)。
您可以在嵌入视图中包括筛选器值,以便仅突出显示所需的数据。例如,您可能希望将来自 Web 应用程序的其他部分的超链接包含到仅显示特定区域的嵌入式销售绩效视图中。
注意: 故事不支持嵌入筛选器。
筛选一个字段
在一个字段上传递筛选器可以快速使嵌入视图显示特定数据。
脚本标记示例:
<script type='text/javascript' src='http://myserver/javascripts/api/viz_v1.js'> </script> <object class='tableauViz' width='800' height='600' style='display:none;'> <param name='host_url' value='http://myserver/' /> <param name='site_root' value='' /> <param name='name' value='Superstore/Product' /> <param name='filter' value='Region=East' /> </object>
若要传递多个筛选器值,只需用逗号将每个值分隔开。例如:
<param name='filter' value='Region=East,West' />
Iframe 标记示例:
<iframe src="http://myserver/views/Superstore/Product?:embed=y&Region=East,West" width="800" height="600"></iframe>
筛选多个字段
您可以根据需要针对任意多个字段传递筛选器,包括原始视图中不可见的字段。
脚本标记示例:
<script type='text/javascript' src='http://myserver/javascripts/api/viz_v1.js'> </script> <object class='tableauViz' width='800' height='600' style='display:none;'> <param name='host_url' value='http://myserver/' /> <param name='site_root' value='' /> <param name='name' value='Superstore/Product' /> <param name='filter' value='Region=Central,South&Customer Segment=Consumer,Home Office' /> </object>
Iframe 标记示例:
<iframe src="http://myserver/views/Superstore/Product?:embed=y&Region=Central,South&Segment=Consumer,Home Office" width="800" height="600"></iframe>
下面的第一个图显示您在视图上单击“共享”并随后单击“复制链接”获得的 URL 的示例。
第二个图显示您如何能通过以下方式修改 URL 并将其添加到 iframe:删除 showShareOptions
和 display_count
参数,为“Region”(区域)和“Segment”(细分)添加筛选器参数,并添加宽度和高度参数以创建一个嵌入链接,该链接仅显示中部和南部地区的消费者及家庭办公室产品。
注意: 如果筛选器值包含特殊字符(例如逗号),请将该字符替换为 \
(反斜杠,%5c
)的网址编码顺序,后接特殊字符的网址编码顺序。需要使用反斜杠对特殊字符进行转义。例如,\,
(反斜杠,逗号)的 URL 编码序列是 %5c%2c
。
筛选日期和时间
如果需要筛选“日期/时间”字段,请使用下面显示的默认 Tableau 格式将该值包括进来:
yyyy-mm-dd hh:mm:ss
时间部件使用 24 小时时钟。许多数据库将所有日期值存储为“日期时间”字段,因此,您可能需要与日期一起传递时间值。
脚本标记示例:
<script type='text/javascript' src='http://myserver/javascripts/api/viz_v1.js'></script> <object class='tableauViz' width='800' height='600' style='display:none;'> <param name='host_url' value='http://myserver/' /> <param name='site_root' value='' /> <param name='name' value='Sales/Sales-Performance' /> <param name='filter' value='Date=2012-12-01' /> </object>
本示例将同时筛选日期字段和日期时间字段:
<param name='filter' value='2012-12-01%2022:18:00' />
Iframe 标记示例:
<iframe src="http://myserver/Sales/SalesPerformance?:embed=yes&Date=2008-12-01%2022:18:00" width="800" height="600"></iframe>
若要筛选多个日期,请用逗号将每个日期分隔开。
筛选度量
可通过包括一个或多个值来筛选度量。不支持大于、小于或范围。下面的示例在筛选后仅显示 $100 和 $200 的销售。
脚本标记示例:
<script type='text/javascript' src='http://myserver/javascripts/api/viz_v1.js'> </script> <object class='tableauViz' width='800' height='600' style='display:none;'> <param name='host_url' value='http://myserver/' /> <param name='site_root' value='' /> <param name='name' value='Sales/Sales-Performance' /> <param name='filter' value='Profit=100, 200' /> </object>
Iframe 标记示例:
<iframe src="http://myserver/views/Sales/Sales-Performance?:embed=yes&Profit=100,200" width="800" height="600"></iframe>