資料表擴充功能

資料表擴充功能允許您使用分析擴充功能指令碼建立資料表。您可以編寫自訂 TabPy 或 Rserve 指令碼,並可選擇新增一或多個輸入表。Tableau Cloud、Tableau Server 和 Tableau Desktop 支援資料表擴充功能。本文件重點介紹 Tableau Cloud。

附註:類似即時連線,每次開啟工作簿或重新整理資料來源時,資料表擴充功能都會重新整理。

優點

資料表擴充功能對新使用者和有經驗的使用者都有以下好處。

  • 輕鬆在 Tableau 中集成指令碼與進階函數

  • 輕鬆地將 Tableau 資料連線中的資料作為輸入拖到指令碼中

  • 低代碼編輯器方便您在資料資源中新增代碼

  • 「資料指南」「資料詮釋」整合
  • 與 TabPy、Rserve 和其他分析擴充功能集成

  • 結果可用於組建儀表板或視覺效果

必要條件

在可以使用資料表擴充功能之前,您必須完成以下清單。

建立表計算

要建立資料表擴充功能,請完成以下步驟。

  1. 開啟已發佈的工作簿。
  2. 開啟一個資料來源或建立一個資料來源。
  3. 「連線」下,選擇「新增資料表擴充功能」

    連線功能表

  4. 將它拖到資料模型中。
  5. (可選)將資料表從資料連線拖到資料表擴充功能窗格中,以便用作分析擴充功能指令碼或函數的輸入。

    • 預設情況下,來自 Tableau 的資料被傳遞到分析擴充功能並定義為 variable _arg1,一個類似字典的結構,例如: {‘colum_name’: [1,2,3], ‘column_name_2’: [3,4,5]

      Python 範例: 可以使用以下方法將輸入資料轉換為 pandas 資料框架。

      import pandas as pddf = (pd.DataFrame(_arg1))

    • 使用 RServe 時,輸入資料被定義為變數 .arg1,資料類型是清單的命名清單。

    • 如果是支援的關聯資料來源,則可以使用自訂 SQL 作為表擴充功能的輸入。在自訂 SQL 查詢中使用參數時,變更該參數會導致查詢重新執行並重新計算指令碼。這將建立一個路徑來動態更新儀表板中的參數,並篩選或以其他方式將值傳遞給資料表擴充功能指令碼。

      關聯資料來源

  6. 在「指令碼」部分輸入您的指令碼或函數呼叫。該指令碼必須返回字典或清單的清單,本質上是一個 JSON 物件。RServe 的指令碼必須返回一個 data.frame 或命名清單的清單,而 Python 的指令碼必須返回一個字典。

    Python 範例: 我們使用以下顯式返回命令。

    return df.to_dict(orient='list')

  7. 附註: 如果在 TabPy 中禁用了 TABPY_EVALUATE_ENABLE,則表擴充功能不支援呼叫 TabPy 端點。

  8. 選取「套用」執行指令碼。
  9. (可選)如果將資料表擴充功能與資料模型中的另一個表相關聯,請在每個表中至少定義一個欄位之間的關係。如果欄位有相同的名稱,這可能會自動發生。

  10. 選擇「立即更新」,結果將出現在「輸出資料表」索引標籤中。

    輸出結果表

附註:如果沒有在資料模型中定義與表關聯性,則「輸入資料表」索引標籤為空,並將顯示訊息「資料預覽無法使用」。

  1. (選用)在「名稱」欄位中,為新的資料表擴充功能輸入唯一的名稱。
  2. 前往「工作表」索引標籤,以開始探索和視覺化資料。來自資料表擴充功能結果的作用與 Tableau 中從一般檔案或關聯資源查詢的任何其他資料一樣。
  3. 發佈工作簿進行分享。發佈目的地,包括伺服器或 Tableau Cloud,必須啟並設定適當類型的分析擴充功能。

疑難排解提示:如果執行指令碼時出現問題,將在 Tableau 錯誤消息中顯示來自分析擴充功能的錯誤。如果資料表擴充功能出現錯誤,請確保所有代碼和格式正確,並嘗試使用位於「儲存」按鈕旁邊的圓形「重新整理資料來源」按鈕,或再次按一下「套用」。

資料表擴充功能與分析擴充功能

雖然其中一些產品不相關,但資料表擴充功能和分析擴充功能共用數個功能。分析擴充功能連線後方可才能使用資料表擴充功能功能。讓我們分解每個功能。

儀表板擴充功能

儀表板擴充功能 允許使用「儀表板擴充功能 SDK」在儀表板中新增自訂 Web 應用程式,但此擴充功能類型與資料表擴充功能擴展無關。

資料表擴充功能

資料表擴充功能允許您在資料來源中建立一個資料表,該資料表可以將資料和指令碼傳送到您的分析擴充功能,並返回一個任意形狀的完整資料表作為結果。傳回的結果在「資料來源」索引標籤中的資料模型中顯示為資料表,在工作簿中顯示為度量和維度。

Analytics 擴充

分析擴充功能允許您使用 Python、外部工具和外部平台等程式設計語言擴充 Tableau 動態計算。建立與分析擴充功能的連線後,就可以透過名為 SCRIPT_X 或 MODEL_EXTERNAL_X 的計算欄位與外部伺服器通訊,其中 X 是預期傳回值的資料類型。有關詳情,請參閱透過分析擴充功能傳遞運算式