Legg til betinget formatering
Med betinget formatering kan en rapportoppretter angi hvordan farger skal vises i en rapport, i henhold til en numerisk verdi.
Denne artikkelen beskriver hvordan du legger til funksjonaliteten for betinget formatering i Power BI-visualobjektet.
Betinget formatering kan bare brukes på følgende egenskapstyper:
- Color
- Tekst
- Icon
- Nettadresse
Legge til betinget formatering i prosjektet
Denne delen viser hvordan du legger til betinget formatering i et eksisterende Power BI-visualobjekt. Eksempelkoden i denne artikkelen er basert på SampleBarChart-visualobjektet. Du kan undersøke kildekoden i barChart.ts.
Legge til en oppføring for betinget fargeformatering i formatruten
I denne delen vil du lære hvordan du legger til en betinget fargeformateringsoppføring, til et datapunkt i formatruten.
Du bruker matrisen
propertyInstanceKind
iVisualObjectInstance
, som vises avpowerbi-visuals-api
. Det første trinnet er å bekrefte at filen inneholder denne importen:import powerbiVisualsApi from "powerbi-visuals-api";
Hvis du vil angi riktig type formatering (Konstant, ConstantOrRule eller Regel), bruker du opplistingen
VisualEnumerationInstanceKinds
. Legg til følgende import i filen:import VisualEnumerationInstanceKinds = powerbiVisualsApi.VisualEnumerationInstanceKinds;
Angi forekomsttype for formateringsegenskap
Hvis du vil formatere egenskaper som støtter betinget formatering, angir du den nødvendige forekomsttype i sine descriptor
.
public getFormattingModel(): powerbi.visuals.FormattingModel {
// ...
formattingGroup.slices.push(
{
uid: `colorSelector${barDataPoint_indx}_uid`,
displayName: barDataPoint.category,
control: {
type: powerbi.visuals.FormattingComponent.ColorPicker,
properties: {
descriptor: {
objectName: "colorSelector",
propertyName: "fill",
selector: dataViewWildcard.createDataViewWildcardSelector(dataViewWildcard.DataViewWildcardMatchingOption.InstancesAndTotals),
altConstantValueSelector: barDataPoint.selectionId.getSelector(),
instanceKind: powerbi.VisualEnumerationInstanceKinds.ConstantOrRule // <=== Support conditional formatting
},
value: { value: barDataPoint.color }
}
}
}
);
// ...
}
VisualEnumerationInstanceKinds.ConstantOrRule
oppretter den betingede formateringsgrensesnittoppføringen sammen med det konstante formateringsgrensesnittelementet.
Definer hvordan betinget formatering fungerer
Definer hvordan formatering skal brukes på datapunktene.
Hvis du bruker createDataViewWildcardSelector
deklarert under powerbi-visuals-utils-dataviewutils
, angir du om betinget formatering skal brukes på forekomster, totaler eller begge deler. Hvis du vil ha mer informasjon, kan du se DataViewWildcard.
Gjør følgende endringer i egenskapene du vil bruke betinget formatering på:
selector
Erstatt verdien meddataViewWildcard.createDataViewWildcardSelector(dataViewWildcardMatchingOption)
samtalen.DataViewWildcardMatchingOption
definerer om betinget formatering brukes på forekomster, totaler eller begge deler.altConstantValueSelector
Legg til egenskapen med verdien som tidligere var definert forselector
egenskapen.
Hvis du vil ha formateringsegenskaper som støtter betinget formatering, angir du den nødvendige forekomst-typen i .descriptor
public getFormattingModel(): powerbi.visuals.FormattingModel {
// ...
formattingGroup.slices.push(
{
uid: `colorSelector${barDataPoint_indx}_uid`,
displayName: barDataPoint.category,
control: {
type: powerbi.visuals.FormattingComponent.ColorPicker,
properties: {
descriptor: {
objectName: "colorSelector",
propertyName: "fill",
// Define whether the conditional formatting will apply to instances, totals, or both
selector: dataViewWildcard.createDataViewWildcardSelector(dataViewWildcard.DataViewWildcardMatchingOption.InstancesAndTotals),
// Add this property with the value previously defined for the selector property
altConstantValueSelector: barDataPoint.selectionId.getSelector(),
instanceKind: powerbi.VisualEnumerationInstanceKinds.ConstantOrRule
},
value: { value: barDataPoint.color }
}
}
}
);
// ...
}
Hensyn og begrensninger
Betinget formatering støttes ikke for følgende visualobjekter:
Tabellbaserte visualobjekter
Matrisebaserte visualobjekter
Vi anbefaler at du ikke bruker betinget formatering med serier. I stedet bør du la kundene formatere hver serie individuelt, noe som gjør det enkelt å skille mellom serier visuelt. De fleste ut-av-boksen visualobjekter med serie, dele denne tilnærmingen.
Relatert innhold
Tilbakemeldinger
https://aka.ms/ContentUserFeedback.
Kommer snart: Gjennom 2024 faser vi ut GitHub Issues som tilbakemeldingsmekanisme for innhold, og erstatter det med et nytt system for tilbakemeldinger. Hvis du vil ha mer informasjon, kan du se:Send inn og vis tilbakemelding for