Esiste un modo per "leggere" o visualizzare ciò che è stato selezionato in un grafico della casella di origine del filtro dati? Desidero utilizzare le informazioni per modificare un filtro dati della tabella dati.
@Martin ,
Selezioni tramite un'interfaccia utente grafica che dispone di strumenti di selezione e lazo, ecc. Potrebbero non esserci logica solo punti selezionati dall'utente.Quindi il filtro Contesto restituisce solo gli stati della riga. Lo script seguente è una modifica di quello scritto per JSL Companion, 2nd Ed. Non utilizza una variabile trasformata (per renderla più intuitiva) e aggiunge un gestore dello stato di riga, per acquisire i risultati di qualsiasi modifica.
La funzione del gestore stampa semplicemente sul registro gli stati delle righe e le righe escluse.Utilizza una semplice funzione loc() che cerca 6 lo stato escluso.Ciò richiederà un po' più di lavoro se i colori e altri stati vengono modificati.Questo era un caso semplice. Se il tuo utilizzo è diverso dovrai fornire i dettagli

Questa schermata mostra il filtro. L'insieme sinistro di grafici XY è incluso nella casella contestuale, l'insieme destro intitolato non filtrato sono gli stessi grafici XY ma non sono inclusi nella casella contestuale. La parte di codice che ottiene le righe filtrate (escluse) è mostrata di seguito.
Dopo aver effettuato le selezioni, se esegui l'ultima riga commentata in basso vedrai evidenziati i punti nel lato non filtrato (selezionato);
//dfsb is the object ref to the data filter source box<BR /><BR />excl = [];
f = function({a}, {sm},
sm = dfsb << get row states;
excl = loc(sm==6);
print(sm,excl);
);
rs = dfsb << Make Row State Handler( f );
//fit_dt << select rows(excl)<<INVERT row="" selection=""></INVERT>
Dove questo richiede più lavoro è la funzione loc().Vedere la Guida > Indice degli script JSL > Casella di visualizzazione > Casella di origine del filtro dati per un esempio di Imposta gli stati delle righe .
Commento Mi piace usare un filtro dati locale che ha più opzioni.