Power BI 視覺效果的排序選項
本文說明可用來指定視覺效果在 PowerBI 中排序項目方式的不同選項。
根據預設,除非在 capabilities.json 檔案中另有說明,否則視覺效果不支援修改其排序次序。
排序功能至少需要下列其中一個參數:
預設排序
default
選項是最簡單的形式。 其允許使用者根據任何一個欄位和方向排序 (遞增或遞減)。 使用者會從 [更多選項] 功能表中選取方向和欄位。
若要啟用預設排序,請將下列程式碼新增至您的 capabilities.json 檔案:
"sorting": {
"default": { }
}
隱含排序
隱含排序可讓您使用參數 clauses
預先定義排序陣列,以描述每個資料角色的排序。 使用者無法變更排序次序,因此 Power BI 不會在視覺效果的功能表中顯示排序選項。 不過,Power BI 會根據指定的設定來排序資料。
若要啟用隱含排序,將隱含 clauses
新增至您的 capabilities.json 檔案 clauses
參數可以包含數個物件,每個物件各有兩個參數:
role
:決定用於排序的DataMapping
direction
:決定排序方向 (1 = 遞增,2 = 遞減)
"sorting": {
"implicit": {
"clauses": [
{
"role": "category",
"direction": 1
},
{
"role": "measure",
"direction": 2
}
]
}
}
自訂排序
自訂排序可讓開發人員在排序時更有彈性。 開發人員可以:
- 允許使用者一次依多個欄位排序。
- 設定資料的預設排序次序
- 允許在執行階段期間進行自訂排序作業
啟用自訂排序
若要啟用自訂排序,請將下列程式碼新增至您的 capabilities.json 檔案:
"sorting": {
"custom": {}
}
範例:自訂排序 API
let queryName1 = this.dataView.matrix.columns.levels[0].sources[0].queryName;
let queryName2 = this.dataView.matrix.columns.levels[1].sources[0].queryName;
let args: CustomVisualApplyCustomSortArgs = {
sortDescriptors: [
{
queryName: queryName1,
sortDirection: powerbi.SortDirection.Ascending
},
{
queryName: queryName2,
sortDirection: powerbi.SortDirection.Descending
},
]
};
this.host.applyCustomSort(args);