Condividi tramite


Ordinare un oggetto visivo in base a un campo dati di destinazione

In Power BI è possibile modificare l'aspetto di un oggetto visivo ordinandolo in base a campi dati diversi. Modificando la modalità di ordinamento di un oggetto visivo, è possibile evidenziare le informazioni che si desidera trasmettere. Indipendentemente dal fatto che si usino dati numerici (ad esempio cifre di vendita) o dati di testo (ad esempio nomi di stato), è possibile ordinare gli oggetti visivi in base alle esigenze. Power BI offre una grande flessibilità per l'ordinamento e i menu rapidi da usare. Per altre informazioni, vedere Modificare l'ordinamento di un grafico in un report di Power BI

Screenshot che mostra un oggetto visivo di Power BI con il menu opzioni aperto e evidenziato i comandi di ordinamento.

È possibile usare l'API visual.sortBy per modificare la modalità di ordinamento di un oggetto visivo in base a uno dei relativi campi dati. È anche possibile controllare la direzione dell'ordinamento.

Come ordinare un oggetto visivo

La classe VisualDescriptor client di Power BI definisce un metodo sortBy come:

visual.sortBy(request: ISortByVisualRequest): Promise<void>

L'interfaccia ISortByVisualRequest include una definizione per la richiesta di ordinamento:

export interface ISortByVisualRequest {
    orderBy: ITarget;
    direction: SortDirection;
}
  • orderBy, il campo dati di destinazione dell'ordinamento. I campi dati in base ai quali è possibile ordinare l'oggetto visivo sono disponibili nel menu delle opzioni di dell'oggetto visivo sotto il comando di menu Ordina per, altre informazioni su Usa destinazioni per selezionare il campo dati da usare su.

    Screenshot che mostra un oggetto visivo di Power BI con il menu delle opzioni aperto e il sottomenu 'ordina per' è espanso.

  • direzione, la direzione dell'ordinamento. L'enumerazione SortDirection definisce la direzione di ordinamento come Ascending o Descending.

    enum SortDirection {
        Ascending = 1,
        Descending = 2,
    }
    

Esempio

Per ottenere le pagine di un report, trovare la pagina attiva e ottenere gli oggetti visivi. L'oggetto visivo viene trovato con il nome univoco VisualContainer1 e ordinato in ordine decrescente in base Total Category Volume misura nella tabella SalesFact:

let pages = await report.getPages();

// Retrieve active page
var activePage = pages.find(function (page) { return page.isActive });

let visuals = await activePage.getVisuals();

// Retrieve target visual (replace "VisualContainer1" with requested visual name)
var visual = visuals.find(function (visual) { return visual.name === "VisualContainer1" });

const request = {
    // Set the target data field of the sort
    orderBy: {
        table: "SalesFact",
        measure: "Total Category Volume"
    },
    direction: models.SortDirection.Descending
};

await visual.sortBy(request);

Per ordinare un oggetto visivo in base a una destinazione di colonna:

const request = {
  // Set the target data field of the sort
    orderBy: {
        table: "Store",
        column: "Name"
    },
    direction: models.SortDirection.Ascending
};

await visual.sortBy(request);