如何在 Tableau 中推迟计算?

How to postpone calculations in Tableau?

在 Tableau 仪表板中,可以创建许多元素(如滑块),用户可以使用这些元素来设置某些参数的值。此外,这些参数与数据结合用作某些计算的输入。计算结果返回给用户。

Tableau 的默认行为是每次用户更改其中一个参数时都会触发计算。如果有很多参数并且每次重新计算需要几秒钟,它可能不是最优的。用户可能希望先设置所有参数的值,然后才触发计算。

如何获得这种行为?

已添加

我发现我可以选择"pause auto updates"(here)。通过这种方式,其中一个参数的更改不会触发计算(如我所愿)。然后我可以通过按 "Refresh" 按钮触发计算(在更改所有参数之后)。这个解决方案的问题是,作为仪表板开发人员,我有这个按钮,但用户不会有。我想用户也可以通过按键盘上的 F9 按钮来更新仪表板,但这可能不是用户友好的。我更愿意将 "Refresh" 按钮放入 UI(直接放入仪表板)。可能吗?

添加 2

Here 我看到一个与我相同的问题。建议的解决方案是使用 "Pause" 和 "Run" 按钮。但是,正如我已经提到的,它似乎不是 "full solution",因为它仅适用于仪表板的开发人员,而不适用于最终用户(因为他们无权访问这些按钮)。所以,我的问题仍然存在:如何将 "Pause" 和 "Run" 按钮添加到仪表板?

您可以将仪表板的某些部分(例如用户输入)分解为 HTML 输入,然后使用 Tableau JavaScript API 来控制 Tableau 行为的各个方面,例如当它刷新时。然后,您可以使用 CSS 等设置控件的样式。以维护一些 HTML 和 JavaScript.

为代价

与只在仪表板上写一个便条说 "use pause and resume when ..." 相比,这可能不值得这么麻烦,但它确实可以让您更好地控制外观、感觉、行为以及与其他应用程序的集成