Visuelle beregninger

Gælder for:✅ Power BI Desktop og Power BI-tjeneste

En visuel beregning er en DAX-beregning, som du definerer og kører direkte på en visualisering i stedet for at føje den til den semantiske model. Da en visuel beregning fungerer sammen med de data, der allerede er vist i visualiseringen, kan du udtrykke almindelige forretningsberegninger – f.eks. kørsel af totaler, glidende gennemsnit og sammenligninger mellem periode og periode – uden at navigere i filterkontekst eller modelrelationer. Resultatet er normalt kortere DAX, der er nemmere at vedligeholde og ofte klarer sig bedre end en tilsvarende måling.

I denne artikel forklares det, hvad visuelle beregninger er, hvordan de fungerer i visualiseringsmatrixen, hvordan de parametre, der styrer dem, fungerer, og hvordan de adskiller sig fra målinger og beregnede kolonner, så du kan bestemme, hvornår en visuel beregning er det rigtige valg.

Her er et eksempel på en visualiseringsberegning, der definerer en løbende sum for Salgsbeløb. Den påkrævede DAX er ligetil:

Running sum = RUNNINGSUM([Sales Amount])

Skærmbillede af DAX til visuelle beregninger.

En beregning kan referere til alle data i visualiseringen, herunder kolonner, målinger eller andre visuelle beregninger. Denne mulighed fjerner kompleksiteten af den semantiske model og forenkler skriveprocessen for DAX. Du kan bruge visuelle beregninger til at fuldføre almindelige forretningsberegninger, f.eks. kørsel af summer eller glidende gennemsnit.

Visuelle beregninger adskiller sig fra de andre beregningsindstillinger i DAX:

  • Visuelle beregninger gemmes ikke i modellen. I stedet kan du gemme dem i visualiseringen. Denne begrænsning betyder, at visuelle beregninger kun kan referere til det, der er i visualiseringen. Du skal føje noget i modellen til visualiseringen, før visualiseringen kan referere til den. Denne begrænsning frigør visuelle beregninger i at beskæftige sig med kompleksiteten af filterkonteksten og modellen.
  • Visuelle beregninger kombinerer enkeltheden i konteksten fra beregnede kolonner med fleksibiliteten i beregningen efter behov fra målinger.
  • Sammenlignet med målinger fungerer visuelle beregninger på aggregerede data i stedet for detaljeniveauet, hvilket ofte medfører ydeevnefordele. Når en beregning kan opnås enten ved en ny måling eller en visuel beregning, medfører sidstnævnte ofte en bedre ydeevne.
  • Da visuelle beregninger er en del af visualiseringen, kan de referere til den visuelle struktur, hvilket giver større fleksibilitet.

Du kan finde en mere detaljeret sammenligning af måder at tilføje beregninger på i Power BI under Brug beregningsindstillinger i Power BI Desktop.

Tabel- og matrixvisualiseringer viser også visuelle beregninger via oplevelsen med brugerdefinerede totaler, så du kan ændre, hvad totalrækken viser, uden at skrive DAX. Du kan få flere oplysninger i artikler om tabel - og matrixvisualisering .

Hvis du vil vide mere om, hvordan du tilføjer eller redigerer en visualiseringsberegning, skal du se Opret visuelle beregninger.

Sådan fungerer visuelle beregninger

Du opretter visuelle beregninger i redigeringstilstand , som åbnes over den valgte visualisering. Redigeringsoverfladen indeholder tre dele: et eksempel på visualiseringen, en formellinje for DAX-udtrykket og en visuel matrix, der viser resultater, mens du skriver.

Skærmbillede, der viser områder af redigeringsskærmen for visuelle beregninger.

Da du gemmer en visuel beregning på visualiseringen, kan den referere til alt i visualiseringen – kolonner, målinger eller andre visuelle beregninger – men intet andet i modellen. De fleste visuelle beregninger evaluerer række for række i forhold til den visuelle matrix, så sammenlægningsfunktioner som SUM er normalt unødvendige. Du kan ikke bruge funktioner, der afhænger af modelrelationer – USERELATIONSHIP, RELATED og RELATEDTABLE.

Når du har tilføjet en visuel beregning, vises den på feltlisten i visualiseringen og gengives på selve visualiseringen.

Skærmbillede af visuelle beregninger, der vises i visualiseringen.

DAX-funktioner, der er tilgængelige i visuelle beregninger

Mange eksisterende DAX-funktioner fungerer i visuelle beregninger. Da visuelle beregninger fungerer inden for rammerne af den visuelle matrix, er funktioner, der er afhængige af modelrelationer, f.eks . USERELATIONSHIP, RELATED eller RELATEDTABLE , ikke tilgængelige.

Visuelle beregninger introducerer også et sæt funktioner, der er specifikke for visuelle beregninger. Mange af disse funktioner er nemmere at bruge genveje til DAX-vinduesfunktioner.

Function Description Example Genvej til
COLLAPSE Beregningen evalueres på et højere niveau på aksen. Procent af overordnet = DIVIDE([Sales Amount], COLLAPSE([Sales Amount], ROWS)) N/A
COLLAPSEALL Beregningen evalueres på aksens samlede niveau. Procent af hovedtotal = DIVIDE([Sales Amount], COLLAPSEALL([Sales Amount], ROWS)) N/A
EXPAND Beregningen evalueres på et lavere niveau på aksen. Gennemsnit af underordnede = EXPAND(AVERAGE([Sales Amount]), ROWS) N/A
EXPANDALL Beregningen evalueres på aksens bladniveau. Gennemsnit af bladniveau = EXPANDALL(AVERAGE([Sales Amount]), ROWS) N/A
FIRST Refererer til den første række på en akse. ProfitVSFirst = [Profit] - FIRST([Profit]) INDEX(1)
ISATLEVEL Rapporterer, om en angivet kolonne findes på det aktuelle niveau. IsFiscalYearAtLevel = ISATLEVEL([Regnskabsår]) N/A
LAST Refererer til den sidste række på en akse. ProfitVSLast = [Profit] - LAST([Profit]) INDEX(-1)
LOOKUP Evaluerer et udtryk i visualiseringsmatrixen ved hjælp af den aktuelle kontekst. LookupSalesFor2025WithContext = LOOKUP(SUM([Sales]), [Year], "2025") N/A
LOOKUPWITHTOTALS Evaluerer et udtryk i visualiseringsmatrixen med totaler. LookupSalesFor2025WithTotals = LOOKUPWITHTOTALS(SUM([Salg]), [År], "2025") N/A
MOVINGAVERAGE Tilføjer et glidende gennemsnit på en akse. MovingAverageSales = MOVINGAVERAGE([Salgsbeløb], 2) WINDOW
NEXT Refererer til næste række på en akse. ProfitVSNext = [Profit] - NEXT([Profit]) OFFSET(1)
PREVIOUS Refererer til en forrige række på en akse. ProfitVSPrevious = [Profit] - PREVIOUS([Profit]) OFFSET(-1)
RANGE Refererer til et udsnit af rækker på en akse. Gennemsnitssalg = MIDDELX(RANGE(1), [Salgsbeløb]) WINDOW
RUNNINGSUM Tilføjer en løbende sum på en akse. RunningSumSales = RUNNINGSUM([Salgsbeløb]) WINDOW

Parametre, der styrer beregningsflowet

Nogle visuelle beregningsfunktioner accepterer valgfri parametre, der styrer, hvordan beregningen gennemgår den visuelle matrix:

  • Axis og Reset er specifikke for visuelle beregninger. De refererer til den visuelle struktur i stedet for bestemte felter.
  • OrderBy og PartitionBy fungerer også i beregnede kolonner og målinger. De refererer direkte til felter.

I følgende afsnit beskrives hver parameter, og hvornår du skal bruge én over en anden.

Axis

Mange funktioner har en valgfri Axis parameter, som du kun kan bruge i visuelle beregninger. Parameteren Axis påvirker, hvordan visualiseringsberegningen gennemgår den visuelle matrix. Parameteren Axis er som standard den første akse i visualiseringen. For mange visualiseringer er ROWSden første akse , hvilket betyder, at beregningen af visualiseringen evalueres række for række i visualiseringsmatrixen fra top til bund. I følgende tabel vises de gyldige værdier for Axis parameteren:

Axis ikon Axis Navn Description
ROWS Beregner lodret på tværs af rækker fra top til bund.
COLUMNS Beregner vandret på tværs af kolonner fra venstre mod højre.
ROWS COLUMNS Beregner lodret på tværs af rækker fra top til bund og fortsætter kolonne for kolonne fra venstre mod højre.
COLUMNS ROWS Beregner vandret på tværs af kolonner fra venstre mod højre og fortsætter række for række fra top til bund.

Note

Hvis du angiver en akse, der ikke findes i visualiseringen, ignoreres den pågældende akse i beregningen.

Reset

Mange funktioner omfatter en valgfri Reset parameter, som du kun kan bruge i visuelle beregninger. Parameteren Reset styrer, om og hvornår funktionen nulstiller værdien til 0 eller skifter til et andet område, mens den gennemgår den visuelle matrix. Den styrer denne funktionsmåde ved at partitionere destinationskolonnen. Når der foretages beregninger i en partition, bestemmer den måde, kolonnen er opdelt i partitioner på, om en beregning nulstilles.

Standardværdien Reset for parameteren er NONE, hvilket betyder, at beregningen af visualiseringen aldrig genstartes.

Parameteren Reset accepterer forskellige typer værdier:

  • Heltal
  • Kolonnereferencer
  • Særlige synonymer: HIGHESTPARENT, LOWESTPARENT, NONE

I alle tilfælde angiver parameteren et enkelt niveau i det visuelle beregningshierarki (målniveauet). Men den måde, beregningen fortolker dette niveau på, kan variere.

Adfærden Reset fungerer i to forskellige tilstande: absolut og relativ.

Når du bruger heltalsværdier NONEfor parameteren eller deres tilsvarende værdier , HIGHESTPARENTog LOWESTPARENT, kan du vælge mellem disse to tilstande efter heltalets signal: Positive værdier udfører en nulstilling i absolut tilstand, og negative værdier udfører en nulstilling i relativ tilstand (og nul nulstilles slet ikke, standardfunktionsmåden).

Hvis du angiver en kolonnereference, fungerer du også i absolut tilstand. Disse værdier bestemmer, hvordan målkolonnen partitioneres, og derfor, hvis den nulstilles. I følgende afsnit beskrives disse to tilstande:

Absolut nulstillingstilstand

Absolut tilstand er en funktionsmåde for Reset parameteren i visuelle beregninger. Denne tilstand angiver, at beregningen skal partitioneres efter destinationskolonnen og alle disse kolonner over den. Denne regel gælder på alle niveauer i beregningen. På niveauer over målkolonnen (hvor målkolonnen ikke findes og muligvis andre kolonner) partitioner med de resterende tilgængelige kolonner. Den positive heltalsværdi identificerer målkolonnen fra toppen (den øverste kolonne er 1, den næste er 2 osv.). Det går op til N (antallet af kolonner i hierarkiet), og alle højere værdier beskæres ned. Du kan også angive kolonnen direkte.

Overvej f.eks. en visuel beregning med disse hierarkiniveauer: År, Kvartal, Måned og Dag. I følgende tabel kan du se, hvordan beregningspartitionerne på hvert niveau afhænger af værdien af Reset:

Niveau/værdi Reset = 1 eller år Reset = 2 eller kvartal Reset = 3 eller måned Reset = 4 eller dag
Dagniveau Year Kvartal og år Måned, kvartal og år Dag, måned, kvartal og år
Månedligt niveau Year Kvartal og år Måned, kvartal og år Måned, kvartal og år
Kvartalsniveau Year Kvartal og år Kvartal og år Kvartal og år
Årsniveau Year Year Year Year
Samlet totalniveau None None None None

Relativ nulstillingstilstand

Relativ tilstand er en funktionsmåde for Reset parameteren i visuelle beregninger. Givet en negativ heltalsværdi – X, på hvert niveau er beregningspartitionerne for alle kolonnerne X-niveauer eller mere over det i hierarkiet (eller partitioner slet ikke, hvis der ikke findes et sådant niveau). Gyldige værdier for denne tilstand er mellem -1 og -N+1 (hvor N er antallet af kolonner i hierarkiet), og eventuelle lavere værdier beskæres. Overvej igen en visuel beregning med disse hierarkiniveauer: År, Kvartal, Måned og Dag. I følgende tabel kan du se, hvordan beregningspartitionerne på hvert niveau afhænger af værdien af Reset

Niveau/værdi Reset = -1 Reset = -2 Reset = -3
Dagniveau Måned, kvartal og år Kvartal og år Year
Månedligt niveau Kvartal og år Year None
Kvartalsniveau Year None None
Årsniveau None None None
Samlet totalniveau None None None

Nulstil parameter synonymer

Parameteren Reset indeholder også følgende synonymer:

  • NONE er standardværdien. Den nulstiller ikke beregningen og svarer til 0.
  • HIGHESTPARENT udfører en absolut nulstilling på det højeste niveau og svarer til 1.
  • LOWESTPARENT udfører en relativ nulstilling af den nærmeste overordnede og svarer til -1.

Eksempler på brug af parameteren Reset

Overvej en visuel beregning med disse hierarkiniveauer: År, Kvartal, Måned og Dag. Følgende visuelle beregninger er ækvivalente og returnerer summen af Sales Amount , der genstartes for hvert år, uanset det niveau beregningen evalueres på (se absolut nulstillingstilstand):

RUNNINGSUM([Sales Amount], HIGHESTPARENT)
RUNNINGSUM([Sales Amount], 1)
RUNNINGSUM([Sales Amount], [Year])

I modsætning hertil returnerer følgende visuelle beregninger begge summen af Sales Amount , der starter fra 0 for hver direkte overordnet, hvilket afhænger af, hvilket niveau beregningen evalueres på (se relativ nulstillingstilstand).

RUNNINGSUM([Sales Amount], LOWESTPARENT)
RUNNINGSUM([Sales Amount], -1)

Endelig nulstilles denne visualiseringsberegning ikke , og den føjer fortsat værdien Salgsbeløb for hver dag til de tidligere værdier uden at genstarte.

RUNNINGSUM([Sales Amount])

OrderBy Og PartitionBy

Parameteren OrderBy accepterer ORDERBY, og parameteren PartitionBy accepterer PARTITIONBY. I modsætning til Axis og Resetkan du bruge disse parametre i beregnede kolonner, målinger og visuelle beregninger, og de refererer direkte til felter.

Det er ikke alle funktioner, der angiver disse parametre. Visuelle beregningsudelt funktioner giver ikke en PartitionBy parameter. Vinduesfunktioner indeholder kun en Reset parameter, hvis du bruger dem i en visuel beregning. Parameteren Relation for vinduesfunktioner er tilgængelig, uanset om du bruger den i en visuel beregning eller ej, men den accepterer kun en Axis , hvis du bruger den i en visuel beregning.

Vælg mellem disse parametre

Du behøver ikke at angive alle disse parametre, og du kan kombinere dem. Sådan bestemmer du, hvilken parameter der skal bruges:

  • Foretrækker Axis , og Reset når du vil have funktionsmåden feltagnostisk, der følger den visuelle struktur. Det er mere fleksibelt at referere til visualiseringsstrukturen end eksplicit at referere til felter.
  • Bruges OrderBy , og PartitionBy når du vil fastgøre beregningen til bestemte felter, uanset det visuelle layout.
  • Bruges PartitionBy i stedet for Reset , når aksen kun har ét niveau. Reset forventer flere niveauer på aksen, så det fungerer ikke, når der kun er ét felt, eller når der findes flere felter på et enkelt niveau på aksen.

Parametervælgere

Parametervælgere gør det nemt at vælge værdier for parametre i visuelle beregningsfunktioner. På følgende billede kan du f.eks. se skabelonen Slå en værdi op med totaler indlæst:

Skærmbillede, der viser parametervælgeren.

Du kan også aktivere parametervælgerne ved hjælp af tastaturgenvejen CTRL+MELLEMRUM .

Visuelle beregningsskabeloner

Visuelle beregninger omfatter skabeloner, der gør det nemmere at skrive almindelige beregninger. Skabelonknappen i redigeringstilstand for visuelle beregninger åbner en menu med tilgængelige skabeloner.

Skærmbillede af brug af skabeloner til visuelle beregninger.

Følgende skabeloner er tilgængelige:

  • Løbende sum. Beregner summen af værdier og føjer den aktuelle værdi til de foregående værdier. Bruger funktionen RUNNINGSUM .
  • Glidende gennemsnit. Beregner et gennemsnit af et værdisæt i et givet vindue ved at dividere summen af værdierne med vinduets størrelse. Bruger funktionen MOVINGAVERAGE .
  • Procent af overordnet. Beregner procentdelen af en værdi i forhold til dens overordnede værdi. Bruger funktionen COLLAPSE .
  • Procent af hovedtotal. Beregner procentdelen af en værdi i forhold til alle værdier ved hjælp af COLLAPSEALL funktionen .
  • Gennemsnit af underordnede elementer. Beregner den gennemsnitlige værdi for sættet af underordnede værdier. Bruger funktionen EXPAND .
  • Versus tidligere. Sammenligner en værdi med en foregående værdi ved hjælp af funktionen PREVIOUS .
  • Versus næste. Sammenligner en værdi med en efterfølgende værdi ved hjælp af NEXT funktionen .
  • Versus første. Sammenligner en værdi med den første værdi ved hjælp af funktionen FIRST.
  • Versus sidst. Sammenligner en værdi med den sidste værdi ved hjælp af funktionen LAST.
  • Slå en værdi op med kontekst. Find en værdi, eller evaluer et udtryk i visualiseringsmatrixen i den aktuelle kontekst ved hjælp af LOOKUP funktionen .
  • Slå en værdi op med totaler. Find en værdi, eller evaluer et udtryk i visualiseringsmatrixen med totaler ved hjælp af LOOKUPWITHTOTALS funktionen .

Skjul felter i visualiseringen

I redigeringstilstand for visuelle beregninger kan du skjule felter fra visualiseringen på samme måde, som du skjuler kolonner og tabeller i udformningsvisningen. Hvis du f.eks. kun vil have vist visualiseringen Profit , skal du skjule Sales Amount og Total Product Cost fra visningen.

Skærmbillede af skjulning af elementer fra en visualiserings visning.

Hvis du skjuler felter, fjernes de ikke fra visualiseringen eller fra visualiseringsmatrixen, så dine visuelle beregninger kan stadig referere til dem og fortsætte med at fungere. Der vises stadig et skjult felt i visualiseringsmatrixen, men det vises ikke i den resulterende visualisering. Medtag kun skjulte felter, hvis de er nødvendige for, at dine visuelle beregninger kan fungere.

Formatér en visuel beregning

Formatér en visuel beregning ved hjælp af datatyper og formateringsindstillinger eller ved hjælp af en brugerdefineret formatstreng på visualiseringsniveau. Indstillingerne for dataformat i afsnittet Generelt i formateringsruden styrer formatet.

Skærmbillede af redigeringstilstanden for visuelle beregninger, der viser en visuel beregning, der returnerer en procentdel, der er formateret som en procentdel.

Overvejelser og begrænsninger

Uunderstøttede visuelle typer

Visuelle beregninger og skjulte felter virker ikke med følgende visuelle effekter:

  • Slicer, R-visuel, Python-visuel
  • Nøgleinfluencere, Decomposition Tree, Q&A, Smart Fortælling
  • Målinger, pagineret rapport, Power Apps, Power Automate
  • Små multipla, spil aksen på spredningsdiagrammet
  • Brugerdefinerede visualiseringer

Ikke-understøttede funktioner

Følgende funktioner er ikke tilgængelige med visuelle beregninger:

Begrænsninger ved udgivelse og deling

Andre begrænsninger

  • Feltparametre fungerer med visuelle beregninger, men har nogle begrænsninger.
  • Live-forbindelser til SQL Server Analysis Services kræver version 2025 eller nyere.

Du kan få flere oplysninger om brug af visuelle beregninger i følgende ressourcer: