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
Alex_0201
Post Partisan
Post Partisan

Trazado de dos gráficos de líneas en uno

Hola, no estoy seguro de si esto es posible en absoluto.

Pero tengo dos siguientes gráficos de líneas:

- a la izquierda, MD vs Días, ambos son columnas regulares

- a la derecha, Profundidad total vs columna de tiempo total, donde Profundidad total es una medida y Columna de tiempo total es una columna creada en la vista Informe.

¿Cómo puedo trazar ambos en un gráfico de líneas?

Gracias de antemano!

1.PNG

23 REPLIES 23
Anand24
Super User
Super User

@Alex_0201,

No estoy seguro, pero tal vez a continuación la solución alternativa podría ser útil en su escenario.

Probablemente puede crear 2 gráficos de líneas con fondos deshabilitados y superponerlos para lograr el formato en 1 espacio de cuadro.

Para el 2o gráfico de líneas, habilite solo los valores secundarios.

Deberá ajustar el tamaño de ambos gráficos de líneas para el diseño requerido.

Obtendrás algo como esto:

workaround.PNG

En el ejemplo anterior:

1er gráfico de líneas: Equipo vs Seis (lado izquierdo del eje Y)

Gráfico de 2a Línea: Cuatros vs Innings (lado derecho del eje Y)

No se olvide de dar los pulgares hacia arriba y aceptar esto como una solución si le ayudó a !!!

amitchandak
Super User
Super User

@Alex_0201, se pueden trazar dos medidas juntas en el mismo eje X

@amitchandak lo siento, no entiendo su comentario...

Hey @Alex_0201 ,

@amitchandak dicho lo mismo que yo.

Puede utilizar 2 medidas/KPI en la misma gráfica, si comparten el mismo eje X.

saludos

Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany
RobThrive
Resolver I
Resolver I

En un gráfico de líneas, puede colocar varios campos en la sección "Valor" debajo del panel de visualización.

Probablemente necesite hacer algún trabajo en los valores de su eje para asegurarse de que son coherentes. Prueba el escalado logarítmico.
TomMartens
Super User
Super User

Hey @Alex_0201 ,

trazando diferentes medidas, KPI en un gráfico sólo es posible si ambas medidas / KPI comparten un eje X común.

saludos

Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany

Hola @TomMartens,gracias! ¿Alguna solución que pueda usar aquí?

Hey @Alex_0201 ,

básicamente, no.

Tal vez pueda considerar la creación de una medida que "mape" el valor actual desde el eje hasta el valor correspondiente del otro eje X. Similar a esto:

Measure = 
var _thecurrentaxisvalue = MAX('tablename'[columnusedonthexaxis])
return
CALCULATE(
    [the other measure]
    , 'theothertable'[theothercolumn] = _thecurrentaxisvalue
)


Con suerte, esto le proporciona algunas ideas nuevas sobre cómo abordar su desafío.

saludos

Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany

Hola @TomMartens ,por favor, explíqueme cuál es [la otra medida] aquí?

Hey @Alex_0201 ,

como ya mencioné, para dibujar dos líneas en un gráfico de una sola línea es necesario que los valores numéricos (llamémoslos measure) compartan un eje común.

Como es fácil dibujar una sola línea, es necesario utilizar el valor del eje actual para filtrar el 2o valor en consecuencia.

Por esta razón, creo una medida que llamo medida, esta medida se utilizará como 2o valor para el gráfico de líneas

La medida determina el valor actual del eje y almacena este valor en la variable _thecurrentaxisvalue. Esta variable se utilizará para filtrar la columna utilizada como eje en el gráfico de 2a línea. Esto sucede dentro de CALCULATE(...).

La referencia [la otra medida] es sólo un marcador de posición que hace referencia a la expresión numérica del 2o diagrama de línea. Como una columna con un tipo de datos numérico se puede utilizar simplemente en el pozo Valores de un objeto visual, será necesario para una función de agregación si esta columna se usará como expresión numérica de CALCULATE como SUM('tablename'[columnname]

Measure = 
var _thecurrentaxisvalue = MAX('tablename'[columnusedonthexaxis])
return
CALCULATE(
    [the other measure]
    , 'theothertable'[theothercolumn] = _thecurrentaxisvalue
)

Con suerte, esto explica el enfoque anterior un poco mejor.

saludos
Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany

Hola @TomMartens lo siento, pero todavía no lo entiendo. La fórmula debe contener esta [la otra medida], ¿verdad? No puedo dejarlo así. ¿Qué pongo ahí? ¿Debo crear otra medida para ello?

También obtengo un siguiente error:

Se ha utilizado una función 'CALCULATE' en una expresión True/False que se utiliza como expresión de filtro de tabla. Esto no está permitido.

Hola @Alex_0201 ,

Parece que [la otra medida] es la 2a medida para la que desea que se cree el gráfico de líneas.

Así que desde el DAX publicado por @TomMartens , parece como a continuación:

1. [columnusedonthexaxis] - su categoría para la que necesita trazar ambos ejes de línea

2. [la otra medida] - 2o valor numérico para el que se va a trazar el gráfico de líneas

3. [la otra columna] - 1er valor numérico para el que se va a trazar el gráfico de líneas

Para ver un ejemplo, considere el gráfico de líneas "Departamento vs Ventas y unidades vendidas":

1. [columnusedonthexaxis] - Departamento

2. [la otra medida] - Unidades vendidas

3. [la otra columna] - Ventas

No se olvide de dar los pulgares hacia arriba y aceptar esto como una solución si le ayudó a !!!

¡Hola @Anand24 muchas gracias! Sill recibe este mensaje:

Se ha utilizado una función 'CALCULATE' en una expresión True/False que se utiliza como expresión de filtro de tabla. Esto no está permitido.

Hey @Alex_0201 ,

la explicación de @Anand24 es buena.

Considere la posibilidad de crear un pbix que contenga datos de ejemplo pero que refleje el modelo de datos. Cargue el pbix en onedrive o dropbox y comparta el enlace. Si utiliza un xlsx para crear los datos de ejemplo, cargue el xlsx también.

saludos

Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany

@TomMartens

Desearía poder recrear el pbix. Es una bestia compleja, docenas de mesas y conexiones 😣

Alféizar recibo este mensaje:

Se ha utilizado una función 'CALCULATE' en una expresión True/False que se utiliza como expresión de filtro de tabla. Esto no está permitido.

Hey @Alex_0201 ,

aquí encontrará un pbix muy simple donde mapo una columna numérica (Cantidad 2) de la Tabla 2 a la columna Columna 1 (de la Tabla 1) utilizada como eje:

https://tommartens-my.sharepoint.com/:u:/g/personal/tom_minceddata_com/ESP8nLYaYBdAmuZ0ZnKO4foBVE3fd...

La suposición subyacente, todas las etiquetas de eje de Tabla 2: Columna 2 se pueden encontrar en Tabla 1: Columna 1, si este no es el caso, entonces tiene que crear una tabla de eje dedicado.

Publique la instrucción DAX que produce un error.

saludos

Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany

@TomMartens gracias! El mensaje de error se debió a la falta de SUM en la fórmula.

Un pequeño problema es que mi Cantidad 2 es la Medida. He intentado cambiarlo con la Tabla 1, pero la Cantidad 1 también es la Medida. La fórmula produce un mensaje:

La columna 'Meaure' en la tabla 'DAILY' no se puede encontrar o no se puede utilizar en esta expresión.

¿Debo reemplazar esta Medida por una columna? Si es así, ¿cómo convertiría esto en una columna?:

Profundidad total ((
_stepno era SELECTEDVALUE('DM_WELL_PLAN_OP'[step_no])
devolución
SI(
_stepno0,
SELECTEDVALUE('DM_WELL_PLAN_OP'[md_to]),
LOOKUPVALUE('DM_WELL_PLAN_OP'[md_to],'DM_WELL_PLAN_OP'[step_no],_stepno+0)
))+SUM(CD_DATUM[datum_elevation]))*(-1)*0.3048

Hola Alex,

No puedo seguir. por esta razón, crea un pbix simple como lo hice. Cargue el pbix y comparta el enlace.

saludos

Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany

Hola @TomMartens lo siento, pero estas dos tablas no están conectadas directamente, sino a través de otra tabla, y todas contienen información confidencial. Así que me tomaría horas y horas crear un pbix fuera de él, y todavía dudaría si divulgé demasiado o no.

Aquí traté de proporcionar tantos detalles como sea posible y renombrado tablas para que sea más fácil leer el código y entender la relación entre las tablas. Espero que tengas un poco más de paciencia conmigo 🙂

He terminado con esta fórmula, pero no devuelve nada...

_Medidas ?
var _thecurrentaxisvalue á MAX('Tabla 1'[Columna de tiempo _Total])
devolución
CALCULATE(
SUM('Tabla 2'[_MD])
, 'Tabla 2'[_days] - _thecurrentaxisvalue
)
Capture.PNG
Esto es lo que _Total vez que la columna y los _MD son, por si acaso:
_Total vez Columna de tiempo (CALCULATE(SUM('Tabla 1'[target_duration]),FILTER('Tabla 1','Tabla 1'[step_no]<-EARLIER('Tabla 1'[step_no]))))/24
_MD : CALCULATE(SUM('Tabla 2'[md_current_convert])*(-1))
2.PNG

Hey @Alex_0201 ,

sin un pbix será difícil rastrear el problema.


Mi suposición _MD y _Total columna de línea son columnas calculadas.

Para ello, recomiendo ajustar la medida a este

_Measure =
var _thecurrentaxisvalue = MAX('Table 1'[_Total time Column])
return
_thecurrentaxisvalue
/*
CALCULATE(
SUM('Table 2'[_MD])
, 'Table 2'[_days] = _thecurrentaxisvalue
)
*/

Con esto, usted debe ser capaz de ver una 2a línea en su gráfico de líneas.

Asegúrese de que estos valores existen en la columna 'Tabla 2'[_days], asegúrese de que la columna y el valor tienen el mismo tipo de datos.

saludos

Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany

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.