Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
CloudMonkey
Post Prodigy
Post Prodigy

¿Cómo controlar el eje cuando se utiliza una media móvil?

Hola

Por favor, ¿puede decirme cómo controlar el eje de un gráfico cuando se utiliza una media móvil de 3 días? Mi problema aquí es que al principio del intervalo de fechas las dos primeras fechas son un promedio de 1 y 2 días respectivamente (resaltado). Y al final del intervalo de fechas las dos últimas fechas son dos y un día promedios respectivamente (también resaltado). Por favor, encuentre el archivo pbix aquí -> https://filebin.net/apmzbk8wwjvi16fh

screenshot moving average.JPG

Gracias por su ayuda,

Cm

1 ACCEPTED SOLUTION
CNENFRNL
Community Champion
Community Champion

Si tiene la intención de mantener la fecha automática con algunas otras medidas dependiendo de ella, esta medida se puede cambiar así para eliminar esos 4 valores resaltados en la visualización,

Volume rolling average =
IF (
    ISFILTERED ( 'Sales'[Date] ),
    ERROR ( "Time intelligence quick measures can only be grouped or filtered by the Power BI-provided date hierarchy or primary date column." ),
    VAR __LAST_DATE =
        LASTDATE ( 'Sales'[Date].[Date] )
    VAR __DATE_RNG =
        DATESBETWEEN (
            'Sales'[Date].[Date],
            DATEADD ( __LAST_DATE, -2, DAY ),
            __LAST_DATE
        )
    RETURN
        IF (
            COUNTROWS ( __DATE_RNG ) = 3
                && CALCULATE ( MAX ( Sales[Volume] ), __LAST_DATE ) > 0,
            AVERAGEX ( __DATE_RNG, CALCULATE ( SUM ( 'Sales'[Volume] ) ) )
        )
)


Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension!

DAX is simple, but NOT EASY!

View solution in original post

5 REPLIES 5
Icey
Community Support
Community Support

Hola @CloudMonkey ,

Por favor, háganos saber si la respuesta de @CNENFRNL es lo que desea.

Saludos

Icey

amitchandak
Super User
Super User

@CloudMonkey , Probar como

Rolling 3 días ?
var _max á minx(allselected(Date),[Date[Date])
var _min á minx(allselected(Date),[Date[Date])
devolución
CALCULATE(sum(Sales[Sales Amount]),DATESINPERIOD('Date'[Date],MAX(Sales[Sales Date]),-3,Day) filter(Date,'Date'[Date] <-_min && 'Date'[Date]>-_max)

O

CALCULATE(sum(Sales[Sales Amount]),DATESINPERIOD('Date'[Date],MAX(Sales[Sales Date]),-3,Day))

CNENFRNL
Community Champion
Community Champion

Si tiene la intención de mantener la fecha automática con algunas otras medidas dependiendo de ella, esta medida se puede cambiar así para eliminar esos 4 valores resaltados en la visualización,

Volume rolling average =
IF (
    ISFILTERED ( 'Sales'[Date] ),
    ERROR ( "Time intelligence quick measures can only be grouped or filtered by the Power BI-provided date hierarchy or primary date column." ),
    VAR __LAST_DATE =
        LASTDATE ( 'Sales'[Date].[Date] )
    VAR __DATE_RNG =
        DATESBETWEEN (
            'Sales'[Date].[Date],
            DATEADD ( __LAST_DATE, -2, DAY ),
            __LAST_DATE
        )
    RETURN
        IF (
            COUNTROWS ( __DATE_RNG ) = 3
                && CALCULATE ( MAX ( Sales[Volume] ), __LAST_DATE ) > 0,
            AVERAGEX ( __DATE_RNG, CALCULATE ( SUM ( 'Sales'[Volume] ) ) )
        )
)


Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension!

DAX is simple, but NOT EASY!

CNENFRNL
Community Champion
Community Champion

Hola, @CloudMonkey , Aquí Autodate arruinó las cosas, como siempre; es por eso que apenas uso esta característica. Una medida puede ser autodenomezada como esta SIN fecha automática,

Volume rolling average (no Autodate) =
VAR __LAST_DATE =
    LASTDATE ( 'Sales'[Date] )
VAR __DATE_RNG =
    DATESBETWEEN ( 'Sales'[Date], DATEADD ( __LAST_DATE, -2, DAY ), __LAST_DATE )
RETURN
    IF (
        COUNTROWS ( __DATE_RNG ) = 3,
        AVERAGEX ( __DATE_RNG, CALCULATE ( SUM ( 'Sales'[Volume] ) ) )
    )

Screenshot 2020-09-13 235628.png


Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension!

DAX is simple, but NOT EASY!

Gracias CNENFRNL. Era la fecha automática que era el problema. No pude entender averagex (¡una batalla para otro día!) así que utilicé la fórmula de abajo, pero parece estar funcionando. Gracias

Volume (3 day trailing total) (auto number of days) = 
VAR
    CurrentDate = max(Sales[Date])
VAR
    Date2DaysAgo = CurrentDate - 2
VAR
    DaysInMovingAverage = CurrentDate - Date2DaysAgo + 1
Return
    CALCULATE(sum(Sales[Volume]),filter(All(Sales[Date]),
        Sales[Date] >= Date2DaysAgo &&
        Sales[Date] <= CurrentDate
    )) / DaysInMovingAverage

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors