¿Es posible organizar el filtro de datos/filtro de datos local horizontalmente? (Cambiar la interfaz de usuario)Hola a todos,
Estoy trabajando con el Filtro de Datos en JMP, donde suelo tener más de 10 filtros. Ahora mismo, todos se muestran verticalmente en una larga lista, y tengo que desplazarme mucho hacia abajo solo para aplicarlos, lo cual resulta muy extraño.
¿Es posible personalizar la interfaz de usuario del filtro de datos para que algunos filtros se puedan mostrar horizontalmente en filas (en lugar de una larga pila vertical de menús desplegables)?
¡Gracias de antemano por cualquier orientación!
Automatización y scriptingAnálisis y modelado de datos básicosRe: ¿Es posible organizar el filtro de datos/filtro de datos local horizontalmente? (Cambiar la interfaz de usuario)Creo que al menos puedes replicar eso usando varios filtros de datos . ¿Puedo organizar los filtros de datos en dos columnas? También podrías hacerlo manipulando mucho el cuadro de visualización, pero no lo he probado (en casos como este, uso un filtro de datos personalizado).
Re: ¿Es posible organizar el filtro de datos/filtro de datos local horizontalmente? (Cambiar la interfaz de usuario)
Gracias por su respuesta. Idealmente, esto debería lograrse usando un solo filtro de datos en lugar de varios, ya que la principal ventaja de un filtro de datos es su capacidad para aplicar filtrado condicional. Si bien usar varios filtros podría ser una posible solución, no estoy seguro de si sería sencillo pasar contexto a los filtros internos para lograr el filtrado condicional. Además, la interfaz de usuario se vería fatal.
También noté algunas limitaciones con los filtros de datos personalizados (probados en un ComboBox):
- Problemas de interfaz de usuario : Cuando los valores de las columnas son demasiado grandes, el menú desplegable se vuelve excesivamente largo y difícil de usar, incluso con un solo valor largo. (Trucar o filtrar los datos antes de mostrarlos como menú desplegable es más laborioso y lento que filtrar datos).
- Problemas de rendimiento : La visualización de miles de registros es extremadamente lenta. Probé diferentes enfoques (como resumir para obtener valores únicos y usar hash para identificar valores de columna únicos), pero ninguno tuvo éxito.
- Complejidad del filtrado condicional : si tiene muchos menús desplegables, implementar el filtrado condicional requiere escribir una cantidad significativa de código, lo que rápidamente se vuelve engorroso.
Re: ¿Es posible organizar el filtro de datos/filtro de datos local horizontalmente? (Cambiar la interfaz de usuario)Gracias por su respuesta.
¿Tiene algún código de ejemplo que pueda compartir en el que muestre los valores de las columnas de la tabla de datos en el cuadro combinado con la condición lograda?
Re: ¿Es posible organizar el filtro de datos/filtro de datos local horizontalmente? (Cambiar la interfaz de usuario)Un enfoque ligeramente diferente:
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Graph Builder(
Size( 437, 787 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 1 ) ), Smoother( X, Y, Legend( 2 ) ) ),
Local Data Filter(
Add Filter(
columns( :sex, :height, :weight )
)
)
);
Current Report()["Local Data Filter", List Box( 6 )] << set Horizontal( 1 );
Current Report()[ List Box( 4 )] << set Horizontal( 0 );

Re: ¿Es posible organizar el filtro de datos/filtro de datos local horizontalmente? (Cambiar la interfaz de usuario)¿Qué intentas hacer? ¿Qué condiciones? ¿En qué orden deben aplicarse las condiciones? ¿Deben aplicarse en orden o se pueden omitir algunas? ¿Puedes modificar la tabla principal (nuevas columnas/selecciones)? ¿Cuándo se aplican los filtros (inmediatamente/al pulsar un botón)? << Seleccionar dónde con restricción es probablemente una opción bastante sencilla.
El filtro de datos local puede utilizar un cuadro combinado (o un selector similar)
Names Default To Here(1);
colcount = 3;
dt = Open("$SAMPLE_DATA/Car Poll.jmp");
dist = dt << Distribution(
Nominal Distribution(Column(:country)),
Local Data Filter(
Conditional,
Add Filter(
columns(:country, :size, :type),
Display(:country, N Items(3), "Single Category Display"),
Display(:size, N Items(3), "Single Category Display"),
Display(:type, N Items(3), "Single Category Display")
)
)
);
ldf_ob = (Report(dist) << Top Parent)[Outline Box("Local Data Filter")];
lub = ldf_ob[LineupBox(2)];
lub << N Col(colcount);
For(i = 1, i <= colcount, i++,
lub << Prepend(Spacer Box(Size(200, 0)));
);
Write();
Re: ¿Es posible organizar el filtro de datos/filtro de datos local horizontalmente? (Cambiar la interfaz de usuario)¿Crees que funciona sin el generador de gráficos? Si lo eliminas, ¿podrás mostrarlo horizontalmente como quieras?
Re: ¿Es posible organizar el filtro de datos/filtro de datos local horizontalmente? (Cambiar la interfaz de usuario)Cada cuadro de lista tiene el indicador Horizontal (0/1).
Simplemente cambie la bandera y podrá cambiar cada lista vertical de objetos de visualización a una horizontal.
Aquí hay un ejemplo de un filtro de datos puro con modo horizontal (no sé si esto es útil)
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
win = new window("test", dt << data Filter(
Add Filter(
columns( :height, :countries visited, :family cars )
)
));
win["Data Filter",ListBox(7)] << set horizontal(1)