如要在 Looker 資訊主頁中新增圖片,請在 Markdown 文字動態磚中硬式編碼圖片網址。不過,文字方塊中的圖片是靜態圖片,不會根據結果更新。 如果想讓資訊主頁圖片根據使用者選取的篩選器值動態變化,該怎麼做?
本最佳做法頁面說明如何使用 Liquid 和 html
參數,取得動態資訊主頁圖片。
解決方法
下列解決方案是以電子商務資料集為基礎,其中包含名為 users.state
的欄位,代表假設電子商務資料集中的狀態:
dimension: state { type: string sql: ${TABLE}.state ;; }
假設您想在資訊主頁上顯示州別的旗幟圖片,並根據使用者選擇的州別篩選資訊主頁結果,更新圖片。
如要建立動態資訊主頁圖片,請完成下列三個步驟:
- 在 LookML 中建立圖片維度。
- 建立動態圖片資訊主頁圖塊。
- 新增資訊主頁篩選器並進行最後潤飾。
步驟 1:在 LookML 中建立圖片維度
如要在 LookML 中建立圖片維度:
- 首先,請前往專案和檢視畫面檔案,其中包含您要新增圖片的維度。接著,根據該欄位建立新維度,專門用於顯示圖片。
-
針對要顯示圖片的每個值,新增
html
參數,以value
變數定義 Liquid{% if %}
條件陳述式。舉例來說,下列
state_flag_image
維度會建立條件,在state
的值為"California"
、"New York"
、"Colorado"
或"Illinois"
時,顯示指定圖片 (含html <img>
標記)。在所有其他狀態下,你可以顯示「沒有可用的圖片」圖示:dimension: state_flag_image { type: string sql: ${state} ;; html: {% if state._value == "California" %} <img src="https://upload.wikimedia.org/wikipedia/commons/0/01/Flag_of_California.svg" height="170" width="255"> {% elsif state._value == "New York" %} <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Flag_of_New_York.svg/1200px-Flag_of_New_York.svg.png" height="170" width="255"> {% elsif state._value == "Colorado" %} <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/4/46/Flag_of_Colorado.svg/255px-Flag_of_Colorado.svg.png" height="170" width="255"> {% elsif state._value == "Illinois"%} <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/0/01/Flag_of_Illinois.svg/1200px-Flag_of_Illinois.svg.png" height="170" width="255"> {% else %} <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/a/ac/No_image_available.svg/1024px-No_image_available.svg.png" height="170" width="170"> {% endif %} ;; }
-
為要顯示圖片的每個值建立值條件。或者,您也可以使用
value
Liquid 變數建立動態圖片欄位,詳情請參閱這篇社群貼文。
接著,您可以為圖片維度建立資訊主頁圖塊。
步驟 2:建立動態圖片資訊主頁動態磚
建立圖片維度 (state_flag_image
) 後,您就能建構「探索」,並將其做為動態圖片資訊主頁圖塊。
根據下列條件建立探索:
-
為原始維度 (本例中為「
state
」) 新增篩選器,並為篩選器設定任意值。由於未選取特定篩選器值,系統一開始會顯示「沒有可用的圖片」圖片。這個篩選值會根據使用者為資訊主頁篩選器選取的項目更新。 -
選取圖片維度 (在本例中為
state_flag_image
) 和查詢可能需要的任何其他維度,以判斷圖片 (例如,如要納入日期,可以加入日期等)。 - 將列數上限變更為一列。
-
將圖表類型變更為單一值圖表,並隱藏圖片維度 (
state_flag_image
) 以外的所有其他資料欄。
在「視覺化」面板中,系統一開始會在單一值視覺化項目中顯示「沒有可用的圖片」圖片。顯示圖片會根據使用者在最終資訊主頁上選取的篩選器值而變更:
將探索查詢儲存至資訊主頁做為圖塊。
步驟 3:新增資訊主頁篩選器並進行最後調整
現在,您需要在資訊主頁中新增資訊主頁篩選器。資訊主頁上的篩選器會更新「探索」中的篩選器,根據使用者選取項目變更顯示的圖片。
在資訊主頁的編輯模式中建立篩選器:
- 開啟「新增篩選條件」視窗
- 選取要篩選的欄位。篩選器欄位應為圖片尺寸所依據的維度。以這個範例來說,篩選器的欄位是「state」。
- 在「要更新的動態磚」分頁中,選取步驟 2 中的圖片動態磚。
- 在內嵌的「Field to Filter」(要篩選的欄位) 下拉式選單中,選取原始維度 (本例為「state」)。 視需要選取其他要更新的動態磚。
- 視需要自訂篩選器。如果選取「進階」控制項選項,請務必取消選取「允許多個篩選值」選項,因為系統會為「進階」控制項選項自動啟用這個選項。
現在,圖片動態磚會根據使用者篩選器選項更新。
如果使用者選擇依「加州」篩選,資訊主頁會顯示加州州旗和資料:
如果使用者選擇依「科羅拉多州」篩選,資訊主頁就會顯示科羅拉多州旗和該州的資料: