Ciao a tutti,
Sto cercando di creare un sottogruppo di tabelle di dati per un grafico di controllo utilizzando una funzione del pulsante di sottoinsieme. ho trovato questo link Creazione di un sottoinsieme da un grafico interattivo?a qualcosa di simile ma è per le righe. Vorrei invece usare le colonne. Ho più colonne e sto usando il selettore di colonne con i grafici di controllo. Vorrei essere in grado di selezionare punti dati specifici sul grafico di controllo e ottenere solo i dati per quei punti in quella colonna specifica.
Di seguito è riportato il JSL che ho provato a utilizzare e che ho provato a modificare in colonne e non è riuscito.
dt5= Data Table( "SPC Columns" );
colNamesList = dt5 << get Column names (string, Continuous);
gb= dt5 << Control Chart Builder(
Size( 534, 464 ),
Show Control Panel( 0 ),
Variables( Y( eval(colNamesList[1]) ) ),
Chart(
Position( 1 ),
Limits( Shade Zones( 1 ) ),
Warnings(
Test 1( 1 ),
Test 2( 1 ),
Test 3( 1 ),
Test 4( 1 ),
Test 5( 1 ),
Test 6( 1 ),
Test 7( 1 ),
Test 8( 1 )
)),
Column Switcher(colNamesList[1], Eval( colNamesList ))
);
subsetButton = Button Box( "Click to Create a Subset of Selected Points",
If( N Rows( dt5 << get selected rows ) > 0,
dt5 << subset( selected rows( 1 ), selected columns( 0 ) )
)
);
Report( gb )["Graph Builder"] << append( subsetButton );
Questo mi darà tutte le colonne che hanno dati nelle righe che vorrei solo la singola colonna di dati quando seleziono quei punti dati specifici.
Grazie per l'aiuto,
-Ryan
Hai fatto la maggior parte del lavoro. Ecco un modo per finirlo:
NamesDefaultToHere(1);
// Data table with some continuous columns
dt = Open("$SAMPLE_DATA/Big Class.jmp" );
colNamesList = dt << get Column names (string, Continuous);
// Control chart
gb = dt << Control Chart Builder(Show Control Panel( 0 ), Variables( Y( eval(colNamesList[1]) ) ));
// Add a column switcher
cs = gb << Column Switcher(colNamesList[1], Eval( colNamesList ));
// 'Extra' button with subset action
subsetButton = Button Box("Click to Create a Subset of Selected Points",
If( N Rows( dt << get selected rows ) > 0,
currentCol = cs << getCurrent;
dt2 = dt << subset( selected rows( 1 ), Columns(Eval(Column(dt, currentCol))));
dt2 << setName("Subset of "||(dt << getName)||" using "||currentCol);
,
Beep();
);
);
// Add this button to the control chart report (use 'topParent' so that this is not affected by any column switcher changes)
(Report(gb)[OutlineBox("Control Chart Builder")] << topParent) << append(subsetButton);