Κοινή χρήση μέσω


Προσθήκη μορφοποίησης υπό όρους

Η μορφοποίηση υπό όρους επιτρέπει σε έναν δημιουργό αναφοράς να καθορίζει τον τρόπο εμφάνισης των χρωμάτων σε μια αναφορά, σύμφωνα με μια αριθμητική τιμή.

Αυτό το άρθρο περιγράφει τον τρόπο προσθήκης της λειτουργικότητας μορφοποίησης υπό όρους στην απεικόνιση Power BI.

Προς το παρόν, η μορφοποίηση υπό όρους μπορεί να εφαρμοστεί μόνο στο χρώμα.

Προσθήκη μορφοποίησης υπό όρους στο έργο σας

Αυτή η ενότητα παρουσιάζει τον τρόπο προσθήκης μορφοποίησης υπό όρους σε μια υπάρχουσα απεικόνιση Power BI. Το παράδειγμα κώδικα σε αυτό το άρθρο βασίζεται στην απεικόνιση SampleBarChart . Μπορείτε να εξετάσετε τον πηγαίο κώδικα σε barChart.ts.

Προσθήκη καταχώρησης μορφοποίησης χρώματος υπό όρους στο τμήμα παραθύρου μορφοποίησης

Σε αυτή την ενότητα θα μάθετε πώς μπορείτε να προσθέσετε μια καταχώρηση μορφοποίησης χρώματος υπό όρους, σε ένα σημείο δεδομένων στο τμήμα παραθύρου μορφοποίησης.

  1. Χρησιμοποιήστε τον propertyInstanceKind πίνακα στο VisualObjectInstance, ο οποίος εμφανίζεται από το powerbi-visuals-api. Επαληθεύστε ότι το αρχείο σας περιλαμβάνει αυτή την εισαγωγή:

    import powerbiVisualsApi from "powerbi-visuals-api";
    
  2. Για να καθορίσετε τον κατάλληλο τύπο μορφοποίησης (Constant, ConstantOrRule ή Rule), χρησιμοποιήστε την VisualEnumerationInstanceKinds απαρίθμηση. Προσθέστε την ακόλουθη εισαγωγή στο αρχείο σας:

    import VisualEnumerationInstanceKinds = powerbiVisualsApi.VisualEnumerationInstanceKinds;
    
  3. Ορισμός τύπου παρουσίας ιδιότητας μορφοποίησης

Για να μορφοποιήσετε ιδιότητες που υποστηρίζουν μορφοποίηση υπό όρους, ορίστε το είδος της απαιτούμενης παρουσίας στο 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 Η δημιουργεί την καταχώρηση περιβάλλοντος εργασίας χρήστη μορφοποίησης υπό όρους μαζί με το στοιχείο περιβάλλοντος εργασίας σταθεράς μορφοποίησης.

Στιγμιότυπο οθόνης του κουμπιού μορφοποίησης υπό όρους, όπως εμφανίζεται στο Power BI, δίπλα στο κουμπί κανονικού χρώματος.

Καθορισμός του τρόπου συμπεριφοράς της μορφοποίησης υπό όρους

Καθορίστε τον τρόπο με τον οποίο εφαρμόζεται η μορφοποίηση στα σημεία δεδομένων σας.

Χρησιμοποιώντας 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 }
                }
            }
        }
    );

    // ...
 }
    

Ζητήματα προς εξέταση και περιορισμοί

Η μορφοποίηση υπό όρους δεν υποστηρίζεται για τις ακόλουθες απεικονίσεις:

  • Απεικονίσεις που βασίζονται σε πίνακες

  • Απεικονίσεις που βασίζονται σε μήτρες

Συνιστούμε να μην χρησιμοποιείτε μορφοποίηση υπό όρους με σειρές. Αντί για αυτό, θα πρέπει να επιτρέψετε στους πελάτες να μορφοποιήσουν κάθε σειρά ξεχωριστά, διευκολύνοντας την οπτική διάκριση μεταξύ των σειρών. Οι περισσότερες έτοιμες απεικονίσεις με σειρές, μοιράζονται αυτή την προσέγγιση.

DataViewUtils