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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
jbaker15
Regular Visitor

Creación de un Histrograma que cambia en función de los filtros de usuario

Tengo un problema interesante que he pasado más horas de las que me gustaría admitir tratando de averiguar. Tengo el siguiente ejemplo de conjunto de datos:

1) wm_week es el año/semana del punto de datos.

2) jj_sales_director es la categoría de director. Hay 3 de estos.

3) jj_sales_category es un nivel de categoría. Hay 20 categorías diferentes.

4) store_nbr es el número de la tienda.

5) ris es un % hasta 100%.

jbaker15_0-1593099623132.png

He creado un histograma usando un gráfico de columnas apiladas a continuación:

jbaker15_1-1593099891569.png

Estoy tratando de contar las distintas tiendas por RIS promedio en los cubos anteriores, que parece funcionar en lo anterior. El problema es que si filtro a la categoría o director quiero que el cambio el visual anterior para cubo el RIS promedio para esa combinación de filtro específica. RIght ahora simplemente no cambia los recuentos cuando el usuario filtra el panel.

He hecho algunas columnas calculadas a continuación que son probablemente el problema, pero no he podido encontrar una manera de hacerlo:

Promedia el instock y los filtros simplemente almacenar: (Columna calculada)

Promedio de inStock ( InStock)
Tienda VAR1 ' 'Instock L30 Days'[store_nbr]
devolución
CALCULAR (
PROMEDIO ( 'Instock L30 Days'[ris]),
TODO ( 'Instock L30 Days' ),
FILTRO ( 'Instock L30 Days', 'Instock L30 Days'[store_nbr] - store1)
)

Crea los cubos: (Medida)

Range1 - var temp- AVERAGE('Instock L30 Days'[Avg inStock]) return
if(temp<-10,"0-10%",if(AND(temp>10,temp<-20),"10-20%",if(AND(AND(AND(temp>20,temp<-30),"20-30%",if(AND(temp>30,temp<-40),"30-40%",if(AND(temp>40,temp<-50),"40-50%",if(AND(temp>50,temp<-60 ),"50-60%",if(AND(temp>60,temp<-70),"60-70%",if(AND(temp>70 ,temp<-80),"70-80%",if(AND(temp>80,temp<-90),"80-90%",if(AND(temp>90,temp<-92),"90-92%",if(AND(temp>92,temp<-994),"92-94%",if(AND(temp>94,temp<-96),"94-96%",if(AND(temp>96,temp<-98),"96-98%","98-100%")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
Crea la columna que se usará en el objeto visual: (Columna calculada)
Columna : 'Instock L30 Days'[Range1]

A continuación se muestra cómo he colocado los datos en el gráfico de columnas.

jbaker15_2-1593100150155.png

Cualquier ayuda sería apreciada.

3 REPLIES 3
jbaker15
Regular Visitor

Dado que las columnas calculadas no funcionan a través de filtros en tiempo real como sugieres, probé un enfoque diferente, pero todavía no tuve suerte. Esto es increíblemente frustrante porque estoy seguro de que hay una respuesta simple.

Creé una tabla de cubos para dividirla en los grupos que quiero en el histograma:

jbaker15_0-1593636371588.png

Luego creé una medida para poner los datos en las ubicaciones:

Bins á CALCULATE(DISTINCTCOUNT('Instock L30 Days'[store_nbr]),(FILTER('Instock L30 Days',and(average('Instock L30 Days'[ris]) >- min(Buckets[Min]),average('Instock L30 Days'[ris]) <- MAX(Buckets[Max])))))
El problema con este método, es que promedia todo en un solo bucket y no divide las tiendas en cada bucket.
jbaker15_0-1593636780738.png

Lo necesito para promediar cada tienda y luego distinto contarlo en los cubos basados en los filtros que están activos en el momento.
Todavía perdido en éste.

v-alq-msft
Community Support
Community Support

Hola, @jbaker15

Me gustaría sugerirle que modifique la columna calculada como medida. Una medida reflejará la selección de la segmentación de datos a tiempo y la columna se actualiza solo después de cargar y hacer clic en el botón Actualizar, y no se puede interactuar a tiempo con otra interacción visual.

Por favor, intente utilizar las siguientes medidas.

Avg inStock =
VAR store1 =
    SELECTEDVALUE ( 'Instock L30 Days'[store_nbr] )
RETURN
    CALCULATE (
        AVERAGE ( 'Instock L30 Days'[ris] ),
        FILTER (
            ALLSELECTED ( 'Instock L30 Days' ),
            'Instock L30 Days'[store_nbr] = store1
        )
    )

Range1 = var temp= [Avg inStock] return
if(temp<=10,"0-10%",if(AND(temp>10,temp<=20),"10-20%",if(AND(temp>20,temp<=30),"20-30%",if(AND(temp>30,temp<=40),"30-40%",if(AND(temp>40,temp<=50),"40-50%",if(AND(temp>50,temp<=60),"50-60%",if(AND(temp>60,temp<=70),"60-70%",if(AND(temp>70,temp<=80),"70-80%",if(AND(temp>80,temp<=90),"80-90%",if(AND(temp>90,temp<=92),"90-92%",if(AND(temp>92,temp<=94),"92-94%",if(AND(temp>94,temp<=96),"94-96%",if(AND(temp>96,temp<=98),"96-98%","98-100%")))))))))))))

Saludos

Allan

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Hola, aprecio la repsonse. Cuando cambio Avg inStock a una medida ya no puedo ponerlo como una variable en Range1. Tampoco me permite poner una medida como un eje compartido en un gráfico de columnas apiladas.

Tal vez esto no sea posible. ¿Alguna otra idea?

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors