Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Formatowanie warunkowe umożliwia twórcy raportu określenie sposobu wyświetlania kolorów w raporcie zgodnie z wartością liczbową.
W tym artykule opisano sposób dodawania funkcji formatowania warunkowego do wizualizacji usługi Power BI.
Obecnie formatowanie warunkowe można stosować tylko do koloru.
Dodawanie formatowania warunkowego do projektu
W tej sekcji pokazano, jak dodać formatowanie warunkowe do istniejącej wizualizacji usługi Power BI. Przykładowy kod w tym artykule jest oparty na wizualizacji SampleBarChart . Kod źródłowy można sprawdzić w barChart.ts.
Dodawanie wpisu formatowania koloru warunkowego w okienku formatowania
W tej sekcji dowiesz się, jak dodać wpis formatowania koloru warunkowego do punktu danych w okienku formatowania.
Użyj tablicy
propertyInstanceKindwVisualObjectInstancepliku , która jest uwidaczniona przezpowerbi-visuals-apielement . Sprawdź, czy plik zawiera ten import:import powerbiVisualsApi from "powerbi-visuals-api";Aby określić odpowiedni typ formatowania (Stała, ConstantOrRule lub Rule), użyj wyliczenia.
VisualEnumerationInstanceKindsDodaj następujący import do pliku:import VisualEnumerationInstanceKinds = powerbiVisualsApi.VisualEnumerationInstanceKinds;Ustawianie rodzaju wystąpienia właściwości formatowania
- getFormattingModel, metoda interfejsu API
- enumerateObjectInstances, metoda interfejsu API — przestarzała
Aby sformatować właściwości obsługujące formatowanie warunkowe, ustaw wymagany rodzaj wystąpienia w parametrze 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 Tworzy wpis interfejsu użytkownika formatowania warunkowego wraz z elementem interfejsu użytkownika formatowania stałego.
Definiowanie zachowania formatowania warunkowego
Zdefiniuj sposób stosowania formatowania do punktów danych.
Za pomocą createDataViewWildcardSelector deklaracji w obszarze powerbi-visuals-utils-dataviewutilsokreśl, czy należy zastosować formatowanie warunkowe do wystąpień, sum lub obu tych opcji. Aby uzyskać więcej informacji, zobacz DataViewWildcard.
Wprowadź następujące zmiany we właściwościach, do których chcesz zastosować formatowanie warunkowe:
Zastąp
selectorwartość wywołaniemdataViewWildcard.createDataViewWildcardSelector(dataViewWildcardMatchingOption).DataViewWildcardMatchingOptionOkreśla, czy formatowanie warunkowe jest stosowane do wystąpień, sum lub obu tych elementów.altConstantValueSelectorDodaj właściwość z wartością zdefiniowaną wcześniej dlaselectorwłaściwości .
- getFormattingModel, metoda interfejsu API
- enumerateObjectInstances, metoda interfejsu API — przestarzała
W przypadku właściwości formatowania, które obsługują formatowanie warunkowe, ustaw wymagany rodzaj wystąpienia w parametrze 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 }
}
}
}
);
// ...
}
Rozważania i ograniczenia
Formatowanie warunkowe nie jest obsługiwane dla następujących wizualizacji:
Wizualizacje oparte na tabelach
Wizualizacje oparte na macierzy
Zalecamy, aby nie używać formatowania warunkowego z serii. Zamiast tego umożliwia klientom formatowanie poszczególnych serii indywidualnie, co ułatwia wizualne rozróżnienie między seriami. Większość standardowych wbudowanych wizualizacji z seriami stosuje to podejście.