API för identitetsfilter
Med API :et för identitetsfilter kan du skapa ett visuellt objekt som kan filtrera kategoriska data med hjälp av en semantisk fråga.
Den filtrerar data efter datapunkter i stället för matematiska uttryck.
API:et håller reda på användarval och vilka datapunkter som ska visas. Datapunkterna sparas i en matris och refereras av deras position i matrisen.
Det här API:et är användbart i följande scenarier:
- För anpassade visuella objekt som använder semantiska modeller med grupp på nycklar
- Migrera visuella objekt som använde ett äldre API (tidigare än 2.2) till ett nyare API
- Tillåt val med hjälp av identifierande indexmatriser
Kommentar
API:et för identitetsfilter är tillgängligt från API-version 5.1 Om du vill ta reda på vilken version du använder kontrollerar apiVersion
du i filen pbiviz.json.
Identitetsfiltermodellen baseras på gränssnittet IIdentityFilter .
private filter: IIdentityFilter = {
$schema: “”,
filterType: FilterType.Identity,
operator: "In",
target: []
}
Om det visuella objektet till exempel fick följande uppdatering av datavyn:
Matrisen är av typen number[] och innehåller identitetsfälten för de objekt som användaren har valt.
IdentityIndex motsvarar indexet för värdet i den semantiska modellens värdematris (se följande exempel).
I exemplet ovan: {identityIndex: 0} = "Aaliyah" {identityIndex: 1} = "Aaliyah" {identityIndex: 02 = "Aaliyah" osv.
Så här använder du API:et för identitetsfilter
Om du vill använda API:et för identitetsfilter måste din powerbi-modellversion vara 1.9.1 eller senare.
Lägg till följande egenskap som medlem i klassen visual.ts:
private filter: IIdentityFilter = { $schema: “”, filterType: FilterType.Identity, operator: "In", target: [] }
Om du vill hantera Power BI-uppdateringar läser du målmatrisen från "jsonFilters" i "VisualUpdateOptions" och översätter den till motsvarande värden. Dessa värden är de som har valts. I föregående exempel motsvarar en målmatris på [0,10] värdena för Aliyah och Abigail.
Om du vill hantera användarval i föregående exempel klickar du på den första Abigail för att lägga till värdet 8 i filtermålmatrisen och skickar det med följande kommando:
this.visualHost.applyJsonFilter(this.filter, "general", "filter", powerbi.FilterAction.merge);
Migrera visuella objekt med gammalt API
Från och med API 5.1.0 lägger du till följande rader i filen capabilities.json för att stödja identitetsfiltret på visuella objekt som skapades med en tidigare version än 2.2:
"migration": {
"filter": {
"shouldUseIdentityFilter": true
}
}
Dessa rader konverterar markeringen till identitetsfilter.
Kommentar
Det här steget är bara nödvändigt för befintliga visuella objekt som skapats med äldre API:er. Nyare visuella objekt behöver inte lägga till detta.
Relaterat innehåll
Använda val av visuella Power BI-objekt för att lägga till interaktivitet i ett visuellt objekt
Har du fler frågor? Prova Power BI Community.