Hola a todos,
Estoy intentando crear un subgrupo de tabla de datos para un gráfico de control utilizando una función de botón de subconjunto. Encontré este enlace ¿Crear un subconjunto a partir de un gráfico interactivo? a algo similar pero es por filas. Me gustaría utilizar las columnas en su lugar. Tengo varias columnas y estoy usando el conmutador de columnas con los gráficos de control. Me gustaría poder seleccionar puntos de datos específicos en el gráfico de control y obtener solo los datos de esos puntos en esa columna específica.
A continuación se muestra el JSL que intenté usar e intenté modificarlo en columnas y fallé.
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 );
Esto me dará todas las columnas que tienen datos en las filas. Solo me gustaría tener una sola columna de datos cuando selecciono esos puntos de datos específicos.
Gracias por su ayuda,
-Ryan
Has hecho la mayor parte del trabajo. Aquí hay una manera de terminarlo:
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);