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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Gráfico con límites constantes

Tengo una tabla de datos para la que quiero crear un límite superior basado en los últimos 6 meses naturales de datos por categoría. Ver ejemplo:

Fecha de emisiónTipoContar
2/5/2022Nuevo234
4/2/2022Reanudación45
11/9/2022Nuevo44
1/5/2023Volvió7
2/9/2023Completado500

Quiero mostrar la media para siempre seis meses por categoría. Por ejemplo: el código verificaría los datos para el tipo (Nuevo), pero solo para las fechas de (julio de 2022 - diciembre de 2022). Probé una medida y dio el valor correcto cuando se probó en una etiqueta, pero una vez que la agrego a un gráfico, cambia cada mes.

6M_H1_2023_New Mean = 
VAR StartDate = DATE(2022, 7, 1)
VAR EndDate = DATE(2022, 12, 30)

RETURN
DIVIDE(
    CALCULATE(
        COUNTROWS('Records Sheet'),
        'Records Sheet'[Type] = "New",
        'Records Sheet'[Issued Date] >= StartDate,
        'Records Sheet'[Issued Date] <= EndDate
    ),
    6,
    0
)

Además, ¿cuál es la mejor manera de evitar crear una medida para cada categoría cada 6 meses para los límites?

11 REPLIES 11
Syndicate_Admin
Administrator
Administrator

@parry2k Entonces, ¿te importa decir que en lugar de usar el campo de fecha en los datos, crea una tabla de calendario separada para tener las mismas fechas y usa esa tabla en su lugar?

Syndicate_Admin
Administrator
Administrator

@Beho está siguiendo esto 👇 que mencioné en mi respuesta anterior.

Y dondequiera que esté visualizando datos de fecha, utilice una columna de la dimensión del calendario.

Syndicate_Admin
Administrator
Administrator

Todavía necesito ayuda con este. Para resumir el escenario que tengo. Tengo datos diarios con algunas categorías, que estoy tratando de usar para crear una suma mensual, y luego un promedio móvil de 6 meses basado en la suma mensual (basado en 6 meses de datos mensuales con una brecha de 6 meses). Crearía medidas separadas para las diferentes categorías y obtendría la media mensual en consecuencia. He probado varios métodos y DAX y devuelven el promedio diario o solo un valor en blanco.

Syndicate_Admin
Administrator
Administrator

Hi Parry2k,

Intenté agregar el DAX como medida y no me permitió seleccionar el campo de fecha, así que agregué una columna calculada:

6MM_Execution Erron Mean = 
VAR EndDate = IF ( MONTH ( 'Records Sheet'[Issued Date] ) <= 6, DATE ( YEAR ( 'Records Sheet'[Issued Date] ) - 1, 12, 31 ), DATE ( YEAR ( 'Records Sheet'[Issued Date] ), 6, 30 ) )
VAR StartDate = EOMONTH ( EndDate, -6 ) + 1

RETURN
DIVIDE(
    CALCULATE(
        COUNTROWS('Records Sheet'),
        'Records Sheet'[Cause 2 Test] = "Execution Error",
        'Records Sheet'[Issued Date] >= StartDate,
        'Records Sheet'[Issued Date] <= EndDate
    ),
    6,
    0
)

Y cuando agrego esta columna en mi gráfico, no agrega nada.

Beho_0-1695743099003.png

¿Es esa la forma correcta de abordarlo? si quiero hacerlo como una medida, ¿hay alguna manera de solucionar no poder seleccionarlo?

Syndicate_Admin
Administrator
Administrator

@Beho no debería, debería mostrar una línea plana para todas las fechas. Por favor, proporcione más detalles o archivo pbix para investigarlo.

Syndicate_Admin
Administrator
Administrator

Esta fórmula es la misma que tengo en el post original. Simplemente calcula las fechas en lugar de agregarlas como parte de la fórmula. Cuando intenté que funcionara en una etiqueta, pero si lo agrego a un gráfico, no es estático, tiene un valor diferente cada día todavía de alguna manera.

Syndicate_Admin
Administrator
Administrator

@Beho que los últimos 6 meses se basan en la fecha de hoy, entonces se vuelve súper fácil:

Measure = 
VAR __Today = TODAY ()
VAR __MaxDate = IF ( MONTH ( __Today ) <= 6, DATE ( YEAR ( __Today ) - 1, 12, 31 ), DATE ( YEAR ( __Today ), 6, 30 ) )
VAR __MinDate = EOMONTH ( __MaxDate, -6 ) + 1
RETURN
CALCULATE ( 
    [Your Measure],
    DATESINPERIOD ( 'Calendar'[Date], __MinDate, __MaxDate )
)
Syndicate_Admin
Administrator
Administrator

Necesito tener un límite estático para los datos que se basa en los últimos 6 meses calendario (si el mes es enero-junio, el límite es julio-diciembre (año anterior), y si el mes es julio-diciembre, el límite es (enero - junio (mismo año)). Obtengo la media, luego la desviación estándar, y luego puedo establecer un límite superior de acción (límite de acción = x3 desviación estándar). Por lo tanto, el límite debe ser una línea recta que cambia cada 6 meses.

Syndicate_Admin
Administrator
Administrator

@Beho ¿cuál es la lógica cuando elegir Jan - Jun o Jul - Dec? Independientemente de su tabla de calendario va a ser la clave si proporciona la lógica completa.

Syndicate_Admin
Administrator
Administrator

Leí sobre la tabla de fechas, y ese es mi plan si la medida directa no funciona. Mi problema es que no se basa en los últimos 6 meses, los límites son de enero a junio o de julio a diciembre. No entiendo por qué mi medida está cambiando con los datos diarios, a pesar de que especificé el inicio y el final en la fórmula.

También estoy probando una tabla de calendario con un mes de inicio y fin para cada día, donde puedo agregar una columna para la media y usar la fórmula para ver la fecha y usar las fechas de inicio y finalización para hacer líneas fijas fijas de 6 meses. Esperaba que la idea de la medida funcionara ya que es más rápida.

Syndicate_Admin
Administrator
Administrator

@Beho

Como práctica recomendada, agregue una dimensión de fecha en el modelo y utilícela para cálculos de inteligencia de tiempo. Una vez agregada la dimensión de fecha, márquela como una tabla de fechas en las herramientas de tabla. Mira los videos relacionados en mi canal YT

Agregar dimensión de fecha
Importancia de la dimensión de fecha
Marcar la dimensión de fecha como una tabla de fechas: ¿por qué y cómo?
Lista de reproducción de inteligencia de tiempo

Y ahora puede agregar fácilmente una medida como esta:

Last 6 Months = 
CALCULATE ( 
   COUNTROWS ( Table ),
   DATESINPERIOD ( 'Calendar'[Date], MAX( 'Calender'[Date] ), -6, MONTH )
)

Y dondequiera que esté visualizando datos de fecha, utilice una columna de la dimensión del calendario.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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