Come creare sottocategorie per righe e colonne simili a tabulareAttualmente sto lavorando alla creazione di una tabella dati di risultati da una query SQL. La tabella dati finale ha una configurazione che unisce i gruppi di colonne condivise e unisce anche le righe di valori condivisi (vedere Tabella 1).
I dati talvolta hanno valori numerici, ma la maggior parte dei risultati sono stringhe come "Negativo" o "< 0,1". Il modo in cui riassumo la tabella dati con i valori carattere/nominali è trasponendo i risultati in base al tipo di test. Posso raggruppare le colonne, ma quando invio la tabella dati a una nuova finestra come report o a una pagina di diario, non vengono visualizzate le colonne raggruppate. Non posso utilizzare Tabulare perché riassume solo i valori numerici e inoltre non ti consente di mantenere la formattazione quando la trasformi in una tabella di dati. Inoltre, non riesco a colorare le celle all'interno di una tabella Tabula. Voglio solo la possibilità di aggiungere sottocategorie e colonne/righe nidificate come fa la tabella a una normale tabella di dati. Mi chiedo se esiste un modo per ottenere ciò che cerco all'interno di JMP utilizzando il codice JSL e, in caso contrario, può trattarsi di una richiesta di funzionalità?
Tabella 1. Esempio di tavolo finale

Personalizzazione di massaCondivisione e comunicazione dei risultatifinestreRi: Come creare sottocategorie per righe e colonne simili a tabulareQuesto è quello che pensavo, ma ho pensato di chiederlo. Grazie ancora per l'aiuto!
Ri: Come creare sottocategorie per righe e colonne simili a tabulareNon penso che riusciresti a farlo molto facilmente.A causa della natura gerarchica dell'albero di visualizzazione non è possibile inserire semplicemente una casella di visualizzazione in modo tale che gli oggetti che non erano i suoi figli diventino i suoi figli.Potresti inserire a ColSpanBox , quindi utilizzando <<CLONEBOX></CLONEBOX> potresti inserire i bambini nel ColSpanBox , ma a quel punto faresti meglio a crearlo da zero

Ri: Come creare sottocategorie per righe e colonne simili a tabulareSembra molto promettente!! Grazie! Ti farò sapere se funziona.
Modifica: ho passato la mattinata a esaminare il tuo codice. È un ottimo inizio per me capire come creare più tabelle personalizzate. Grazie! Apprezzo il tempo e lo sforzo. C'è un modo per aggiungere una casella di span sopra le colonne a una tabella già esistente? Ad esempio, diciamo che ho organizzato la tabella senza categorizzazione aggiuntiva. Non voglio andare colonna per colonna per mettere insieme la tabella. Voglio solo farlo apparire qui sopra. Spero che abbia senso.
Ri: Come creare sottocategorie per righe e colonne simili a tabulareJMP non consente di raggruppare le righe.Tabulare non raggruppa le righe, lascia semplicemente alcune righe vuote (vedi sotto).
Se osservi la struttura ad albero di Tabula, noterai che JMP utilizza costrutti speciali come MultiTblStrColBox E MultiTblNumColBox per creare la tabella del tabulato.Questi non sono qualcosa che può essere creato in JSL dall'utente.La cosa migliore da fare è utilizzare il file <<OTTIENI come="" rapporto=""></OTTIENI> con qualche gruppo fantasioso e gestione dei nomi con cui creare qualcosa di simile TabellaBox - a cui abbiamo accesso in JSL.Ecco una funzione rapida " tabellare " che ho messo insieme in grado di prendere una tabella che ha colori specificati sulle sue celle con qualsiasi raggruppamento di colonne che potresti desiderare e crea qualcosa come tabulare.È necessario specificare una tabella e una colonna categoriale speciale all'interno di:
Names Default To Here( 1 );
table = Open( "$SAMPLE_DATA/Blood Pressure.jmp" );
theGroup = table << Group Columns( "BP", :BP 8M :: :BP 8W );
theGroup = table << Group Columns( "ELSE", {:BP 12W, :BP 6W} );
For( i = 1, i <= N Cols( table ), i++,
For Each Row( table,
Column( table, i ) << Color Cells( Eval List( Repeat( {Random Uniform( 0.9, 1 )}, 3 ) ), Row() )
);
);
tabulatish = Function( {table, category},
{Default Local},
column names = table << Get Column Names( "String" );
For( i = 1, i <= N Items( column names ), i++,
If( Uppercase( category ) == Uppercase( column names[i] ),
category = column names[i];
Break();
)
);
Eval( Parse( Eval Insert( JSL Quote(
table << Sort( By( :Name("^category^") ), Order( "Ascending" ), "Replace Table" );
) ) ) );
categories = Associative Array( Column( table, category ) ) << Get Keys;
locs = Repeat( {""}, N Rows( table ) );
For( i = 1, i <= N Items( categories ), i++,
locs[(Loc( Column( table, category ) << Get Values, categories[i] ))[1]] = categories[i]
);
nt = New Table( "temp", <<NEW column=""></NEW>
