Använda visuella beräkningar (förhandsversion)

Kommentar

Visuella beräkningar är för närvarande i förhandsversion.

En visuell beräkning är en DAX-beräkning som definieras och körs direkt i ett visuellt objekt. Visuella beräkningar gör det enklare att skapa beräkningar som tidigare var svåra att skapa, vilket leder till enklare DAX, enklare underhåll och bättre prestanda.

Här är ett exempel på en visuell beräkning som definierar en löpande summa för Försäljningsbelopp. Observera att DET DAX som krävs är enkelt:

Running sum = RUNNINGSUM([Sales Amount])

Skärmbild av DAX för visuella beräkningar.

En beräkning kan referera till alla data i det visuella objektet, inklusive kolumner, mått eller andra visuella beräkningar, vilket tar bort komplexiteten i den semantiska modellen och förenklar processen med att skriva DAX. Du kan använda visuella beräkningar för att slutföra vanliga affärsberäkningar, till exempel löpande summor eller glidande medelvärden.

Visuella beräkningar skiljer sig från de andra beräkningsalternativen i DAX:

  • Visuella beräkningar lagras inte i modellen och lagras i stället i det visuella objektet, vilket innebär att visuella beräkningar bara kan referera till vad som finns i det visuella objektet. Allt i modellen måste läggas till i det visuella objektet innan den visuella beräkningen kan referera till den, vilket frigör visuella beräkningar från att bry sig om komplexiteten i filterkontexten och modellen.

  • Visuella beräkningar kombinerar enkelheten i kontexten från beräknade kolumner med flexibiliteten i beräkningen på begäran från mått.

  • Jämfört med mått fungerar visuella beräkningar på aggregerade data i stället för detaljnivån, vilket ofta leder till prestandafördelar. När en beräkning kan uppnås antingen med ett nytt mått eller en visuell beräkning leder den senare ofta till bättre prestanda.

  • Eftersom visuella beräkningar är en del av det visuella objektet kan de referera till den visuella strukturen som leder till mer flexibilitet.

En mer djupgående jämförelse av olika sätt att lägga till beräkningar i Power BI finns i Använda beräkningsalternativ i Power BI Desktop.

När du har aktiverat visuella beräkningar kan du:

  • Lägga till visuella beräkningar i dina rapporter
  • Dölj vissa fält
  • Skapa visuella beräkningar snabbt med hjälp av mallar
  • Gör flexibla visuella beräkningar genom att referera till det visuella objektets axlar

Följande avsnitt innehåller information om hur vart och ett av elementen, som beskrivs i föregående punkter, fungerar med visuella beräkningar.

Aktivera visuella beräkningar

Om du vill använda visuella beräkningar måste du aktivera det i Alternativ och Inställningar> Alternativ förhandsgranskningsfunktioner.> Välj Visuella beräkningar och välj OK. Visuella beräkningar aktiveras när Power BI Desktop har startats om.

Lägga till en visuell beräkning

Om du vill lägga till en visuell beräkning väljer du ett visuellt objekt och väljer sedan knappen Ny beräkning i menyfliksområdet:

Skärmbild av att välja den nya beräkningsknappen i menyfliksområdet.

Fönstret visuella beräkningar öppnas i redigeringsläge . Skärmen Redigera läge består av tre huvudavsnitt, som visas uppifrån och ned i följande bild:

  • Den visuella förhandsgranskningen som visar det visuella objekt som du arbetar med
  • Ett formelfält där du kan lägga till visuella beräkningar
  • Den visuella matrisen som visar data i det visuella objektet och visar resultatet av visuella beräkningar när du lägger till dem

Skärmbild som visar områden i redigeringsskärmen för visuella beräkningar.

Om du vill lägga till en visuell beräkning skriver du uttrycket i formelfältet. I ett visuellt objekt som till exempel innehåller Försäljningsbelopp och Total produktkostnad per räkenskapsår kan du lägga till en visuell beräkning som beräknar vinsten för varje år genom att helt enkelt skriva: Profit = [Sales Amount] – [Total Product Cost].

Skärmbild av hur du anger en visuell beräkning.

Som standard utvärderas de flesta visuella beräkningar i ett visuellt objekt rad för rad, till exempel en beräknad kolumn. I föregående exempel subtraheras aktuellt försäljningsbelopp och Total produktkostnad för varje rad i den visuella matrisen och resultatet returneras i kolumnen Vinst. Även om det är möjligt behöver du inte lägga till en aggregeringsfunktion som SUM som du skulle göra i ett mått. I själva verket är det bättre att inte lägga till sådana aggregeringar när de inte behövs, så att du enklare kan skilja mellan mått och visuella beräkningsuttryck.

När du lägger till visuella beräkningar visas de i listan över fält i det visuella objektet:

Skärmbild av visuella beräkningar som visas i listan över fält i det visuella objektet.

Dessutom visas den visuella beräkningen i det visuella objektet:

Skärmbild av visuella beräkningar som visas i det visuella objektet.

Du kan använda många befintliga DAX-funktioner i visuella beräkningar. Funktioner som är specifika för visuella beräkningar är också tillgängliga. Eftersom visuella beräkningar fungerar inom ramen för den visuella matrisen kan funktioner som förlitar sig på modellrelationer som USERELATIONSHIP, RELATED eller RELATEDTABLE inte användas.

Dölja fält från det visuella objektet

I redigeringsläget för visuella beräkningar kan du dölja fält från det visuella objektet precis som du kan dölja kolumner och tabeller i modelleringsvyn. Om du till exempel bara vill visa den visuella vinstberäkningen kan du dölja försäljningsbelopp och total vinstkostnad från vyn:

Skärmbild av att dölja element från ett visuellt objekts vy.

Att dölja fält tar inte bort dem från det visuella objektet eller från den visuella matrisen, så dina visuella beräkningar kan fortfarande referera till dem och fortsätta att fungera. Ett dolt fält visas fortfarande i den visuella matrisen men visas helt enkelt inte på det resulterande visuella objektet. Vi rekommenderar att du endast inkluderar dolda fält om de behövs för att dina visuella beräkningar ska fungera.

Använda mallar

Visuella beräkningar innehåller mallar för att göra det enklare att skriva vanliga beräkningar. Du hittar mallar genom att välja mallknappen och välja en mall att arbeta med:

Skärmbild av hur du använder mallar för visuella beräkningar.

Följande mallar är tillgängliga:

  • Löpande summa. Beräknar summan av värden och lägger till det aktuella värdet i föregående värden. RUNNINGSUM Använder funktionen.
  • Glidande medelvärde. Beräknar ett medelvärde av en uppsättning värden i ett visst fönster genom att dividera summan av värdena med fönstrets storlek. MOVINGAVERAGE Använder funktionen.
  • Procent av överordnad. Beräknar procentandelen av ett värde i förhållande till dess överordnade värde. COLLAPSE Använder funktionen.
  • Procent av totalsumman. Beräknar procentandelen av ett värde i förhållande till alla värden med hjälp av COLLAPSEALL funktionen .
  • Genomsnitt för barn. Beräknar det genomsnittliga värdet för uppsättningen med underordnade värden. EXPAND Använder funktionen.
  • Jämfört med tidigare. Jämför ett värde med ett föregående värde med hjälp av PREVIOUS funktionen.
  • Jämfört med nästa. Jämför ett värde med ett efterföljande värde med hjälp av NEXT funktionen .
  • Jämfört med först. Jämför ett värde med det första värdet med hjälp av FIRST funktionen.
  • Jämfört med sist. Jämför ett värde med det sista värdet med hjälp av LAST funktionen.

Om du väljer en mall infogas mallen i formelfältet. Du kan använda dessa mallar som startpunkter. Du kan också lägga till egna uttryck utan att förlita dig på mallar.

Axis

Många funktioner har en valfri Axis parameter som bara kan användas i visuella beräkningar. Axis påverkar hur den visuella beräkningen passerar den visuella matrisen. Parametern Axis är inställd på den första axeln i det visuella objektet som standard. För många visuella objekt är ROWSden första axeln , vilket innebär att den visuella beräkningen utvärderas rad för rad i den visuella matrisen, uppifrån och ned. I följande tabell visas giltiga värden för parametern Axis :

Axis Ikonen Axis Namn beskrivning
ROWS Beräknar lodrätt över rader uppifrån och ned.
COLUMNS Beräknar vågrätt mellan kolumner från vänster till höger.
ROWS COLUMNS Beräknar lodrätt över rader uppifrån och ned och fortsätter kolumn för kolumn från vänster till höger.
COLUMNS ROWS Beräknar vågrätt över kolumner från vänster till höger och fortsätter rad för rad uppifrån och ned.

Kommentar

Du kan bara använda axelvärden som är tillgängliga i det visuella objekt som du arbetar med. Alla visuella objekt tillhandahåller inte alla axlar, och vissa visuella objekt har inga axlar.

Reset

Många funktioner har en valfri Reset parameter som endast är tillgänglig i visuella beräkningar. Reset påverkar om och när funktionen återställer värdet till 0 eller växlar till ett annat omfång när den passerar den visuella matrisen. Parametern Reset är inställd på Ingen som standard, vilket innebär att den visuella beräkningen aldrig startas om. Reset förväntar sig att det finns flera nivåer på axeln. Om det bara finns en nivå på axeln kan du använda PARTITIONBY. I följande lista beskrivs de enda giltiga värdena för parametern Reset :

  • NONE är standardvärdet och återställer inte beräkningen.
  • HIGHESTPARENT återställer beräkningen när värdet för den högsta överordnade på axeln ändras.
  • LOWESTPARENT återställer beräkningarna när värdet för det lägsta överordnade värdet på axeln ändras.
  • Ett numeriskt värde som refererar till fälten på axeln, där det högsta fältet är ett.

För att förstå HIGHESTPARENT och LOWESTPARENTbör du överväga en axel som har tre fält på flera nivåer: År, Kvartal och Månad. HIGHESTPARENT Är År, medan den lägsta överordnade är Kvartal. Till exempel returnerar en visuell beräkning som definieras som RUNNINGSUM([Sales Amount], HIGHESTPARENT) eller RUNNINGSUM([Sales Amount], 1) en löpande summa av Försäljningsbelopp som börjar från 0 för varje år. En visuell beräkning som definieras som RUNNINGSUM([Sales Amount], LOWESTPARENT) eller RUNNINGSUM([Sales Amount], 2) returnerar en löpande summa av försäljningsbeloppet som börjar från 0 för varje kvartal. Slutligen återställs inte en visuell beräkning som definieras som RUNNINGSUM([Sales Amount])och fortsätter att lägga till värdet Försäljningsbelopp för varje månad till föregående värden, utan att starta om.

Axis och Reset vs ORDERBY och PARTITIONBY

Axis, Reset, ORDERBY och PARTITIONBY är fyra funktioner som kan användas i par eller tillsammans för att påverka hur en beräkning utvärderas. De bildar två par som ofta används tillsammans:

  • Axis och Reset
  • ORDERBY och PARTITIONBY

Axis och Reset är endast tillgängliga för funktioner som kan användas i visuella beräkningar och som bara kan användas i en visuell beräkning, eftersom de refererar till den visuella strukturen. ORDERBY och PARTITIONBY är funktioner som kan användas i beräknade kolumner, mått och visuella beräkningar och referera till fält. Även om de utför samma funktion skiljer de sig åt i den abstraktionsnivå som tillhandahålls. att referera till den visuella strukturen är mer flexibelt än den explicita hänvisningen till fält med ORDERBY eller PARTITIONBY.

Reset förväntar sig att det finns flera nivåer på axeln. Om du inte har flera nivåer på axeln, antingen eftersom det bara finns ett fält eller flera fält på en enda nivå på axeln, kan du använda PARTITIONBY.

Att ange något av paren fungerar bra, men du kan också ange Axis, ORDERBY och/eller PARTITIONBY tillsammans, i vilket fall värdena som anges för ORDERBY och PARTITIONBY åsidosätter de värden som dikteras av Axis. Reset kan inte kombineras med ORDERBY och PARTITIONBY.

Du kan se paret ORDERBY och PARTITIONBY som fäst fältreferenser genom att uttryckligen ange fält, där axel och återställning är fältagnostiska – de refererar till strukturen och vilket fält som än råkar finnas i den struktur som används.

Tillgängliga funktioner

Du kan använda många av de befintliga DAX-funktionerna i visuella beräkningar. Eftersom visuella beräkningar fungerar inom ramen för den visuella matrisen är funktioner som förlitar sig på modellrelationer som USERELATIONSHIP, RELATED eller RELATEDTABLE inte tillgängliga.

Visuella beräkningar introducerar också en uppsättning funktioner som är specifika för visuella beräkningar. Många av dessa funktioner är enklare att använda genvägar till DAX-fönsterfunktioner.

Kommentar

Använd endast de visuella beräkningar som anges i tabellen nedan. Andra visuella beräkningar specifika funktioner är endast för internt bruk just nu och bör inte användas. Se tabellen nedan för alla uppdateringar av de funktioner som är tillgängliga för användning allt eftersom den här förhandsversionen fortskrider.

Function beskrivning Exempel Genväg till
COLLAPSE Beräkningen utvärderas på en högre nivå av axeln. Procent av överordnad = DIVIDE([Försäljningsbelopp], COLLAPSE([Försäljningsbelopp], ROWS)) Ej tillämpligt
COLLAPSEALL Beräkningen utvärderas på den totala nivån för axeln. Procent av totalsumma = DIVIDE([Försäljningsbelopp], COLLAPSEALL([Försäljningsbelopp], ROWS)) Ej tillämpligt
EXPAND Beräkningen utvärderas på en lägre nivå av axeln. Genomsnitt för underordnade = EXPAND(AVERAGE([Sales Amount]), ROWS) Ej tillämpligt
EXPANDALL Beräkningen utvärderas på lövnivån för axeln. Medelvärde för lövnivå = EXPANDALL(AVERAGE([Sales Amount]), ROWS) Ej tillämpligt
FIRST Refererar till den första raden i en axel. ProfitVSFirst = [Profit] – FIRST([Profit]) INDEX(1)
ISATLEVEL Rapporterar om en angiven kolumn finns på den aktuella nivån. IsFiscalYearAtLevel = ISATLEVEL([Räkenskapsår]) Ej tillämpligt
LAST Refererar till den sista raden i en axel. ProfitVSLast = [Vinst] – LAST([Vinst]) INDEX(-1)
MOVINGAVERAGE Lägger till ett glidande medelvärde på en axel. MovingAverageSales = MOVINGAVERAGE([Försäljningsbelopp], 2) FÖNSTRET
NEXT Refererar till nästa rad i en axel. ProfitVSNext = [Vinst] – NEXT([Vinst]) OFFSET(1)
PREVIOUS Refererar till en tidigare rad i en axel. ProfitVSPrevious = [Profit] – PREVIOUS([Profit]) OFFSET(-1)
RANGE Refererar till en sektor med rader i en axel. AverageSales = AVERAGEX(RANGE(1), [Försäljningsbelopp]) FÖNSTRET
RUNNINGSUM Lägger till en löpande summa på en axel. RunningSumSales = RUNNINGSUM([Försäljningsbelopp]) FÖNSTRET

Beaktanden och begränsningar

Visuella beräkningar är för närvarande i förhandsversion, och under förhandsversionen bör du vara medveten om följande överväganden och begränsningar:

  • Alla visuella typer stöds inte. Använd redigeringsläget för visuella beräkningar för att ändra visuell typ. Anpassade visuella objekt har inte heller testats med visuella beräkningar eller dolda fält.
  • Följande visuella typer och visuella egenskaper har testats och inte fungerar med visuella beräkningar eller dolda fält:
    • Linjediagram och staplat stapeldiagram
    • Trädkarta
    • Mappning
    • Formkarta
    • Azure Map
    • Segment
    • Visuellt R-objekt
    • Visuellt Python-objekt
    • Viktiga influerare
    • Nedbrytningsträd
    • Frågor och svar
    • Smart narrativ
    • Mått
    • Sidnumrerad rapport
    • ArcGIS-Kartor
    • Power Apps
    • Power Automate
    • Små multiplar
  • Prestanda för den här funktionen är inte representativ för slutprodukten.
  • Återanvändning av visuella beräkningar med hjälp av kopiera/klistra in eller andra mekanismer är inte tillgängligt.
  • Du kan inte filtrera efter visuella beräkningar.
  • En visuell beräkning kan inte referera till sig själv på samma eller annan detaljnivå.
  • Anpassning av visuella beräkningar eller dolda fält är inte tillgängligt.
  • Du kan inte använda funktionen Publicera på webben med rapporter som använder visuella beräkningar eller dolda fält.
  • Du kan inte exportera underliggande data från visuella objekt som använder visuella beräkningar eller dolda fält.
  • Du kan inte använda funktionen visa poster för detaljerad information med visuella objekt som använder visuella beräkningar eller dolda fält.
  • Du kan inte ange inbyggda eller anpassade formatsträngar för visuella beräkningar.
  • Du kan inte tillämpa villkorsstyrd formatering på visuella beräkningar.
  • Du kan inte ange datakategorier för visuella beräkningar.
  • Du kan inte ändra aggregeringar i visuella beräkningar.
  • Du kan inte ändra sorteringsordningen för visuella beräkningar.
  • Power BI Embedded stöds inte för rapporter som använder visuella beräkningar eller dolda fält.
  • Live-anslutningar till SQL Server Analysis Services stöds inte.
  • Du kan inte använda fältparametrar med visuella beräkningar.
  • Visa objekt utan data är inte tillgängligt med visuella beräkningar.

Nästa steg

Följande artiklar kan vara användbara när du lär dig och använder visuella beräkningar: