È possibile disporre il Filtro dati/Filtro dati locali orizzontalmente? (Modifica interfaccia utente)Ciao a tutti,
Sto lavorando con il Filtro Dati in JMP, dove spesso ho più di 10 filtri. Al momento, sono tutti visualizzati verticalmente in un lungo elenco e devo scorrere molto verso il basso solo per applicarli, il che mi sembra davvero strano.
È possibile personalizzare l'interfaccia utente del filtro dati in modo che alcuni filtri possano essere visualizzati orizzontalmente in righe (anziché in una lunga pila verticale di menu a discesa)?
Grazie in anticipo per qualsiasi consiglio!
Automazione e scriptingAnalisi e modellazione dei dati di baseRe: È possibile disporre il Filtro dati/Filtro dati locali orizzontalmente? (Modifica interfaccia utente)Penso che tu possa almeno replicare questo risultato usando più filtri dati. Posso disporre i filtri dati in due colonne? Potresti anche riuscire a farlo con un sacco di manipolazioni di caselle di visualizzazione, ma non l'ho provato (uso filtri dati personalizzati in casi come questo).
Re: È possibile disporre il Filtro dati/Filtro dati locali orizzontalmente? (Modifica interfaccia utente)
Grazie per la risposta. Idealmente, questo dovrebbe essere realizzabile utilizzando un singolo filtro dati anziché più filtri, poiché il vantaggio principale di un filtro dati è la sua capacità di applicare filtri condizionali. Sebbene l'utilizzo di più filtri potrebbe essere una possibile soluzione, non sono sicuro che sarebbe semplice passare il contesto ai filtri interni per ottenere un filtraggio condizionale. Inoltre, l'interfaccia utente avrebbe un aspetto assolutamente pessimo.
Ho notato anche alcune limitazioni con i filtri dati personalizzati (testati su una ComboBox):
- Problemi di interfaccia utente : quando i valori delle colonne sono troppo grandi, il menu a discesa diventa eccessivamente lungo e difficile da usare, anche se si ha un valore lungo. (Troncare o filtrare i dati prima di visualizzarli come menu a discesa richiede più lavoro. (Più lavoro e più lentezza rispetto al filtro dati))
- Problemi di prestazioni : la visualizzazione di migliaia di record è estremamente lenta. Ho provato diversi approcci (come la sintesi per ottenere valori univoci e l'utilizzo dell'hashing per identificare i valori univoci delle colonne), ma nessuno ha funzionato.
- Complessità del filtraggio condizionale : se si hanno molti menu a discesa, l'implementazione del filtraggio condizionale richiede la scrittura di una notevole quantità di codice, che diventa rapidamente macchinoso.
Re: È possibile disporre il Filtro dati/Filtro dati locali orizzontalmente? (Modifica interfaccia utente)Grazie per la risposta.
Hai qualche codice di esempio da condividere in cui vengono visualizzati i valori delle colonne della tabella dati nella casella combinata con la condizione ottenuta?
Re: È possibile disporre il Filtro dati/Filtro dati locali orizzontalmente? (Modifica interfaccia utente)Un approccio leggermente diverso:
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: È possibile disporre il Filtro dati/Filtro dati locali orizzontalmente? (Modifica interfaccia utente)Cosa stai cercando di fare? Quali condizioni? In quale ordine dovrebbero essere applicate le condizioni? Devono essere applicate in ordine o alcune possono essere saltate? Puoi apportare modifiche alla tabella principale (nuove colonne/selezioni)? Quando vengono applicati i filtri (immediatamente/alla pressione del pulsante)? << Seleziona Dove con restrizione è molto probabilmente un'opzione piuttosto semplice.
Il filtro dati locale può utilizzare la casella combinata (o un selettore simile)
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: È possibile disporre il Filtro dati/Filtro dati locali orizzontalmente? (Modifica interfaccia utente)Pensi che funzioni senza il generatore di grafici? Se rimuovi il generatore di grafici, potrai visualizzare il grafico orizzontalmente come preferisci?
Re: È possibile disporre il Filtro dati/Filtro dati locali orizzontalmente? (Modifica interfaccia utente)Ogni casella di riepilogo ha il flag Orizzontale (0/1).
Basta cambiare il flag e potrai trasformare ogni elenco verticale di oggetti visualizzati in uno orizzontale.
ecco un esempio di filtro dati puro con modalità orizzontale (non so se è utile)
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)