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.
Hola a todos. Estoy tratando de crear un gráfico de líneas visual que mostrará Cero cuando no hay datos presentes. He estado leyendo a través del foro durante algún tiempo y he intentado múltiples maneras sugeridas y no puedo conseguir que el gráfico para mostrar la forma en que necesito. Estoy rastreando las auditorías realizadas por turnos. El 03/16/21, el turno "Naranja" hizo 1 auditoría y el turno "Azul" no hizo ninguna. No quiero ver un hueco en la línea para el cambio "Azul", sino que baje a cero en el Eje X.
El gráfico debería tener un aspecto similar al siguiente:
Utilizo lo siguiente como mi medida para calcular el recuento de auditorías:
AuditCount = COUNT(Audits[AuditID])+0
Mi Eje X es categórico, ya que quiero mostrar todas las fechas. Cambiar a Continuo no muestra los resultados deseados, ya que la línea de datos de desplazamiento azul salta del 03/15/21 al 03/17/21 y no quiero eso.
Cualquier sugerencia / apoyo para resolver esto sería apreciado. Gracias.
Solved! Go to Solution.
Ok, aquí hay una manera verdadera y probada:
Cree una medida en la línea de:
Cutoff =
VAR _MaxDataDate = CALCULATE(MAX('Audits'[ShiftDate]), ALL('Audits'))
RETURN
IF(MAX('Calendar'[Date]) <= _MaxDataDate, 1)
Ahora seleccione el objeto visual y agregue esta medida a los "Filtros en este objeto visual" en el panel de filtro y establezca el valor en 1.
Utilice la medida probada [AuditCount] en el objeto visual:
@PaulDBrown como seguimiento de mi respuesta de ayer, se me ocurrió una solución diferente. Además de que el tuyo funcionó, no funcionó para lo que necesito mostrar. Lo que terminé haciendo es agregar dos columnas calculadas a mi tabla de auditoría.
CountO = If(Audits[Shift]="O",1,0)
CountB = If(Audits[Shift]="B",1,0)
y los añadí a mi objeto visual. Tengo el gráfico y la matriz para mostrar con ceros como quería y sin fechas no deseadas.
Gracias por aguantarme. 🙂
Hola buenas tardes,
Tengo un caso similar al problema planteado, incluyo ceros donde no hay registros, pero necesito que me muestre solo los proyectos en los que ha participado el empleado, no todos los proyectos que tengo en el modelo de datos.
¿como podria hacerlo?
Ya que me muestra todos los proyectos, pero no me respeta el filtro de empleado.
como puedo adjuntar pbix, para que me ayudeis.
Saludos, Muchas Gracias.
¿Está utilizando una tabla de fechas que cubre el rango de fechas en su modelo y con fechas continuas?
Sí, tengo una mesa de citas:
Calendar = CALENDARAUTO()
2 esto es lo que obtego usando la tabla de fechas para el eje X y estableciendo el eje X en categórico
El gráfico superior muestra una SUMA simple; la parte inferior muestra SUM + 0
@PaulDBrown: Desafortunadamente, eso no es lo que obtendo. Estoy contando registros, no resumiéndolos, ya que la tabla de datos muestra la fecha de la auditoría, el área auditada, el empleado auditado y el turno, así como un campo de ID de auditoría. Estoy contando el campo De identificación de auditoría, ya que eso es lo que mostré en mi publicación original. ¿Algún otro pensamiento?
Prueba cualquiera de los dos:
AuditCount =
VAR _count = COUNT(Audits[AuditID])
RETURN
_count + 0
O
AuditCount = COUNT(Audits[AuditID])
Y entonces
AuditCount = [AuditCount] +0
La opción 1 no funciona... probará la opción 2, mañana.... ¿Supongo que son dos medidas separadas cada una con un nombre único?
Lo sentimos, @PaulDBrown, la opción 2 tampoco funciona.... Todavía tengo un descanso en la línea. Ojalá pudiera compartir la base de datos, pero no puedo hacerlo desde el trabajo. Lo he desmontado e hecho una muestra y he probado ambas medidas y obteré los siguientes resultados en mi versión desmontada:
No sé cuál es el problema de tu parte. Usando un ejemplo de datos simple, obteré esto para
Count = COUNT('Table'[Value])
Y por esto:
Count + 0 = COUNT('Table'[Value]) + 0
Entiendo esto:
Y para compararlos:
Ambos tienen el eje x establecido como categórico y la fecha es de la tabla de fechas
¡Hola! @PaulDBrown Estoy perplejo también.... de todo lo que leí ayer y lo que hemos discutido en este hilo debe funcionar... Yo también estoy perplejo. En mi archivo de ejemplo, tengo los datos eliminados en 4 columnas, AuditID, Date, JobID y Shift. ¿Tiene sentido?
@Opal55
No puedo ver cómo el número de columnas afectaría al resultado; después de todo, usted está contando los D.I. (de un solo cloumn).
Sin embargo, veo en uno de los objetos visuales que el eje X es de "ShiftDate". ¿Esa es tu mesa de citas?
Aquí está el modelo de mi ejemplo. El eje x es el campo Fecha de la tabla de fechas:
La tabla de fechas tiene fechas contiguas que cubren el intervalo de fechas del modelo (incluidas las fechas en las que no hay valores en la tabla de hechos)
Hay dos mesas como esta:
Ok, pero parece que está utilizando el campo ShiftDate (de la tabla 'Auditorías') como eje en lugar del campo de fecha de la tabla Calendario:
Cambie el campo del eje X al campo de fecha de la tabla Calendario
Bien, @PaulDBrown, a continuación está mi resultado.... pero no quiero mostrar datos de fechas que aún no han sucedido:
Me gustaría que las líneas se detuvieran en la última fecha en la que hay datos en la tabla auditorías, pero todavía muestran todas las fechas del mes actual.... ¿Es eso posible?
Por supuesto, sólo tiene que utilizar la siguiente medida en lugar de la medida COUNT + 0:
New measure =
VAR _Count = COUNT(Audits[AuditID])
VAR _CountZero = _Count + 0
VAR _Lastdate =
CALCULATE (
MAX ( Calendar[Date] ),
FILTER ( Calendar, NOT ( ISBLANK ( _Count ) ) )
)
RETURN
IF ( MAX ( Calendar[Date] ) <= _LastDate, _CountZero )
@Opal55
Esto se debe a que "Calendar" es una función DAX per se, por lo que debe especificar que está apuntando a una tabla real mediante la sintaxis de tabla adecuada de 'Calendario'...
Tratar:
New measure =
VAR _Count = COUNT(Audits[AuditID])
VAR _CountZero = _Count + 0
VAR _Lastdate =
CALCULATE (
MAX ( Calendar[Date] ),
FILTER ( 'Calendar', NOT ( ISBLANK ( _Count ) ) )
)
RETURN
IF ( MAX ( Calendar[Date] ) <= _LastDate, _CountZero )
Si no es así, cambie el nombre de la tabla Calendario a "Tabla de calendario" y ajuste la sintaxis de la medida al nuevo nombre
Lo siento, @PaulDBrown, siento que estoy siendo un dolor terrible, pero ahora estoy de vuelta a donde empecé:
una brecha en la línea de desplazamiento azul y el gráfico se detiene el 23 de marzo - última fecha para los datos en la tabla auditoría.
No te preocupes, es mi culpa por tratar de cortar esquinas.
así que... Mantenga su medida original:
AuditCount = COUNT(Audits[AuditID])+0
Y luego crea el nuevo usando:
New measure =
VAR _Count = COUNT(Audits[AuditID])
VAR _Lastdate =
CALCULATE (
MAX ( Calendar[Date] ),
FILTER ( 'Calendar', NOT ( ISBLANK ( _Count ) ) )
)
RETURN
IF ( MAX ( Calendar[Date] ) <= _LastDate, [AuditCount] )
Esta medida incluirá datos hasta la última fecha para los datos de la tabla Auditoría. Si desea el corte en una fecha diferente, necesitamos cambiar la variable _Lastdate en consecuencia (si es así, hágamelo saber dónde desea la fecha límite)
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
1 | |
1 |