共用方式為


隱藏或顯示視覺效果標頭

內嵌在應用程式中的Power BI報表包含視覺效果,例如圖表、熱度圖和量測計。 這些視覺效果具有標頭,可讓使用者使用動作。 當您使用Power BI時,可以隱藏或顯示報表中每個視覺效果的標頭。 每個視覺效果在 [視覺效果] 窗格的 [ 格式設定] 區段中有一張卡片,稱為 [Visual 標頭]。 您可以使用該卡片來開啟和關閉視覺效果的標頭。 在 Visual 標頭中深入瞭解視覺效果標頭,

視覺效果標頭中的動作範例包括:

  • 以焦點模式開啟視覺效果。
  • 向下切入或向上切入。
  • 檢視目前套用至視覺效果的篩選和交叉分析篩選器。
  • 開啟視覺效果的選項功能表。

有時候隱藏這些動作會很有用。 例如,當兩個視覺效果重疊時,您可能不想顯示這兩個視覺效果的標頭。

此 API 提供一種方式來隱藏或顯示報表中所有視覺效果的標頭,或只顯示特定視覺效果的標頭。 您可以設定報表載入的可見性,或呼叫報表 updateSettings 方法來變更報表載入之後的可見性,請參閱 在運行時間更新報表設定。

您可以在許多案例中使用 API,包括下列使用案例:

  • 只隱藏報表中的部分視覺效果標頭。
  • 在應用程式中使用商業規則,例如按下按鈕,以在載入報表之後隱藏或顯示標頭。

如何隱藏或顯示視覺效果標頭

若要隱藏或顯示 API 中的視覺標頭,您可以在報表的設定中設定特定參數。 如需在內嵌報表中設定選項的一般資訊,請參閱 設定報表設定

視覺標頭設定

使用視覺標頭時,可見度目前是唯一可以設定的設定。 若要隱藏或顯示標頭,您可以提供視覺標頭組態物件清單。 每個物件都包含設定物件,也可以包含選取器。 選取器 識別您要套用設定的視覺效果。 在 選取器中深入了解選取器

您提供給 API 的組態物件類型 IVisualSettings。 本文稍後會找到 範例, 示範如何在程序代碼中使用這個介面。 Power BI 模型 列出範例使用的所有介面定義。

請注意下列幾點:

  • 選取器在這些設定中是選擇性的。 當您未列出任何選取器時,API 會將您的設定套用至報表中的所有視覺效果。
  • 當您使用選取器時,您可以依名稱或類型指定視覺效果。 若要取得指定頁面中視覺效果的名稱和類型,請使用Page getVisuals 方法。

優先順序規則

API 會依下列順序套用組態設定:

  • 儲存在報表中的設定。
  • 您在內嵌組態物件中定義的設定,API 會在負載時套用。
  • 您提供給 updateSettings API 的設定。

如果多個設定可以套用至視覺效果,API 會使用套用的最後一個設定。 下一節 隱藏所有視覺效果標頭 範例說明這一點。

例子

這些範例示範使用 API 來隱藏或顯示視覺標頭的不同方式。

隱藏所有視覺效果標頭

這個簡單的案例可藉由隱藏報表中的所有視覺效果標頭,為客戶提供全新的報表檢視:

let embedConfig = {
    ...
    settings: {
        ...
        visualSettings: {
            visualHeaders: [
                {
                    settings: {
                        visible: false
                    }
                    /* No selector is listed. The API hides the headers of all the visuals in the report. */
                }
            ]
        }
    }
};
...
let report = powerbi.embed(embedContainer, embedConfig);

隱藏特定視覺效果的標頭

此範例會使用選取器將可見度設定套用至單一視覺效果。 當您想要隱藏對視覺效果而言沒有意義的功能時,就會發生此案例。 在這裡情況下,請使用此程式碼:

let embedConfig = {
    ...
    settings: {
        ...
        visualSettings: {
            visualHeaders: [
                {
                    settings: {
                        visible: false
                    },
                    selector: {
                        $schema: "http://powerbi.com/product/schema#visualSelector",
                        visualName: <The name of the visual>  // You can retrieve the name by using getVisuals.
                    }
                }
            ]
        }
    }
};
...
let report = powerbi.embed(embedContainer, embedConfig);

隱藏所有視覺效果標頭,但一個視覺效果標頭

使用此程式代碼來隱藏報表中的所有視覺效果標頭,但特定視覺效果的標頭除外:

let embedConfig = {
    ...
    settings: {
        ...
        visualSettings: {
            visualHeaders: [
                {
                    settings: {
                        visible: false
                    }
                    /* No selector is listed. The API hides the headers of all the visuals in the report. */
                },
                {
                    settings: {
                        visible: true
                    },
                    selector: {
                        $schema: "http://powerbi.com/product/schema#visualSelector",
                        visualName: <The name of the visual> // You can retrieve the name by using getVisuals.
                    }
                }
            ]
        }
    }
};
...
let report = powerbi.embed(embedContainer, embedConfig);

如果您想要讓多個標頭可見,您可以擴充此程序代碼。 使用 settings 中的 visible 參數設定 IVisualHeader 的其他實例,true。 針對每個應該有可見標頭的視覺效果,將一個 IVisualHeader 實例新增至清單。

局限性

  • 如果您內嵌的報表處於檢視模式,您只能控制視覺標頭的可見性。
  • 您只能隱藏或顯示視覺效果的整個標頭。 您無法在標頭選單中設定特定項目的可見性。
  • 當您使用選取器指定視覺效果的名稱或類型時,請使用Page getVisuals 方法來取得視覺效果的名稱,這是唯一標識符。 請勿使用視覺效果的標題來設定選取器。
  • 如果使用者儲存您使用 API 內嵌的報表,您定義的視覺效果設定將會儲存至報表。 您可以使用許可權層級的 View 來設定報表,而不是 EditSave來避免這種情況。