Προσθήκη μορφοποίησης υπό όρους
Η μορφοποίηση υπό όρους επιτρέπει σε έναν δημιουργό αναφοράς να καθορίζει τον τρόπο εμφάνισης των χρωμάτων σε μια αναφορά, σύμφωνα με μια αριθμητική τιμή.
Αυτό το άρθρο περιγράφει τον τρόπο προσθήκης της λειτουργικότητας μορφοποίησης υπό όρους στην απεικόνιση Power BI.
Προς το παρόν, η μορφοποίηση υπό όρους μπορεί να εφαρμοστεί μόνο στο χρώμα.
Προσθήκη μορφοποίησης υπό όρους στο έργο σας
Αυτή η ενότητα παρουσιάζει τον τρόπο προσθήκης μορφοποίησης υπό όρους σε μια υπάρχουσα απεικόνιση Power BI. Το παράδειγμα κώδικα σε αυτό το άρθρο βασίζεται στην απεικόνιση SampleBarChart . Μπορείτε να εξετάσετε τον πηγαίο κώδικα σε barChart.ts.
Προσθήκη καταχώρησης μορφοποίησης χρώματος υπό όρους στο τμήμα παραθύρου μορφοποίησης
Σε αυτή την ενότητα θα μάθετε πώς μπορείτε να προσθέσετε μια καταχώρηση μορφοποίησης χρώματος υπό όρους, σε ένα σημείο δεδομένων στο τμήμα παραθύρου μορφοποίησης.
Χρησιμοποιήστε τον
propertyInstanceKind
πίνακα στοVisualObjectInstance
, ο οποίος εμφανίζεται από τοpowerbi-visuals-api
. Επαληθεύστε ότι το αρχείο σας περιλαμβάνει αυτή την εισαγωγή:import powerbiVisualsApi from "powerbi-visuals-api";
Για να καθορίσετε τον κατάλληλο τύπο μορφοποίησης (Constant, ConstantOrRule ή Rule), χρησιμοποιήστε την
VisualEnumerationInstanceKinds
απαρίθμηση. Προσθέστε την ακόλουθη εισαγωγή στο αρχείο σας:import VisualEnumerationInstanceKinds = powerbiVisualsApi.VisualEnumerationInstanceKinds;
Ορισμός τύπου παρουσίας ιδιότητας μορφοποίησης
Για να μορφοποιήσετε ιδιότητες που υποστηρίζουν μορφοποίηση υπό όρους, ορίστε το είδος της απαιτούμενης παρουσίας στο 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
Η δημιουργεί την καταχώρηση περιβάλλοντος εργασίας χρήστη μορφοποίησης υπό όρους μαζί με το στοιχείο περιβάλλοντος εργασίας σταθεράς μορφοποίησης.
Καθορισμός του τρόπου συμπεριφοράς της μορφοποίησης υπό όρους
Καθορίστε τον τρόπο με τον οποίο εφαρμόζεται η μορφοποίηση στα σημεία δεδομένων σας.
Χρησιμοποιώντας createDataViewWildcardSelector
τη δηλωμένη στην περιοχή powerbi-visuals-utils-dataviewutils
, καθορίστε αν θα εφαρμόσετε μορφοποίηση υπό όρους σε παρουσίες, σύνολα ή και τα δύο. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα DataViewWildcard.
Κάντε τις ακόλουθες αλλαγές στις ιδιότητες στις οποίες θέλετε να εφαρμόσετε μορφοποίηση υπό όρους:
Αντικαταστήστε την
selector
τιμή με τηνdataViewWildcard.createDataViewWildcardSelector(dataViewWildcardMatchingOption)
κλήση.DataViewWildcardMatchingOption
Καθορίζει εάν η μορφοποίηση υπό όρους εφαρμόζεται σε παρουσίες, σύνολα ή και τα δύο.Προσθέστε την
altConstantValueSelector
ιδιότητα με την τιμή που ορίστηκε προηγουμένως για τηνselector
ιδιότητα.
Για ιδιότητες μορφοποίησης που υποστηρίζουν μορφοποίηση υπό όρους, ορίστε το είδος της απαιτούμενης παρουσίας στο 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 }
}
}
}
);
// ...
}
Ζητήματα προς εξέταση και περιορισμοί
Η μορφοποίηση υπό όρους δεν υποστηρίζεται για τις ακόλουθες απεικονίσεις:
Απεικονίσεις που βασίζονται σε πίνακες
Απεικονίσεις που βασίζονται σε μήτρες
Συνιστούμε να μην χρησιμοποιείτε μορφοποίηση υπό όρους με σειρές. Αντί για αυτό, θα πρέπει να επιτρέψετε στους πελάτες να μορφοποιήσουν κάθε σειρά ξεχωριστά, διευκολύνοντας την οπτική διάκριση μεταξύ των σειρών. Οι περισσότερες έτοιμες απεικονίσεις με σειρές, μοιράζονται αυτή την προσέγγιση.