Soy nuevo en JSL, recién comencé hace 2 semanas.
Estoy tratando de crear análisis para muchas pruebas, pocas pruebas se apilan juntas a la vez en una nueva tabla de datos cada vez; para cuando el guión está terminado, termino con muchos abiertos tablas de datos No puedo cerrar estas tablas de datos después de realizar el análisis. ¿Hay alguna forma de cerrar estos archivos abiertos sin cerrar el archivo de datos original o el gráfico real?
Porque ahora estoy terminando con más de 30 archivos de datos, llamados test, test1,...
aquí hay un complemento de mi código:
dt = Current Data Table();
NW = New Window( "TRIM_CHARTS",
dt << Stack(
columns(
:TRIM_TARGET,
:Emulate_0000__,
:Emulate_0001__,
:Emulate_0010___,
:Emulate_0011__,
:Emulate_0100__,
:Emulate_0101__,
:Emulate_0110__,
:Emulate_0111__,
:Emulate_1000__,
:Emulate_1001__,
:Emulate_1010__,
:Emulate_1011__,
:Emulate_1100___,
:Emulate_1101__,
:Emulate_1110___,
:Emulate_1111__,
: _BEST_VALUE
),
Source Label Column( "Label" ),
Stacked Data Column( "Data" ),
Output Table( "test" )
);
Oneway(
Y( :Data ),
X( :Label ),
Name( "Means/Anova" )(1),
Means and Std Dev( 1 ),
Mean Diamonds( 1 ),
Mean Error Bars( 1 ),
Std Dev Lines( 1 ),
Connect Means( 1 ),
X Axis Proportional( 0 ),
Points Spread( 1 ),
Grand Mean( 0 ),
SendToReport(
Dispatch(
{},
"Oneway Plot",
FrameBox,
{Row Legend(
Temp,
Color( 1 ),
Color Theme( "Blue to Green to Red" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
dt << Stack(
columns(
:Ilim__TRIM_TARGET,
:Emulate_0000_Ilim_,
:Emulate_0001_Ilim_,
:Emulate_0010_Ilim_,
:_iLIM_BEST_VALUE
),
Source Label Column( "Label" ),
Stacked Data Column( "Data" ),
Output Table( "test" )
);
Oneway(
Y( :Data ),
X( :Label ),
Name( "Means/Anova" )(1),
Means and Std Dev( 1 ),
Mean Diamonds( 1 ),
Mean Error Bars( 1 ),
Std Dev Lines( 1 ),
Connect Means( 1 ),
X Axis Proportional( 0 ),
Points Spread( 1 ),
Grand Mean( 0 ),
SendToReport(
Dispatch(
{},
"Oneway Plot",
FrameBox,
{Row Legend(
Temp,
Color( 1 ),
Color Theme( "Blue to Green to Red" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
);
nw << Set page setup(
margins( 0.5, 0.5, 0.5, 0.5 ),
scale( 0.8 ),
portrait( 0 ),
paper size( "A3" )
);
jrn = NW << Journal;
NW << save PDF( "C:\My Documents\Trim_CHARTS.pdf" );
Gracias
Sam
El código de Uday funcionará muy bien, el siguiente código simplemente simplifica el mismo código
Names Default To Here( 1 );
DontClose = {"Test1", "Result"}; // Example names of tables you want to leave
// Loop backwards through the list, so the table numbers do not change
For( i = N Table(), i >= 0, i--,
If( Contains( DontClose, Data Table( i ) << get name ),
Continue(),
Close( Data Table( i ), "No Save" )
)
);Es posible que esta no sea la forma más eficiente de lograr lo que desea, pero funcionará.
openDTs = List(); // Define an empty list to collect names of all open data tables
TableNames = List();
For( i = 1, i <= N Table(), i++,
Insert Into( openDTs, Data Table( i ) );
Insert Into(TableNames,Data Table(i) << get name);
);
// By now openDTs contains references of all tables that you have open
DontClose = {"Test1","Result"}; // Example names of tables you want to leave open
For( i = 1, i <= N Items(openDTs) , i++,
TabName = openDTs[i] << Get Name ;
If(Contains(DontClose,TabName),
Continue();
,
Close(openDTs[i],"No Save");
);
);Es un ruido ocultarlas, pero ¿hay alguna forma de cerrar todas las tablas sin especificar sus nombres y sin cerrar la salida final (por ejemplo, cerrar todo excepto pensar).
Gracias
Cuando cree sus tablas de datos apilados, simplemente hágalas invisibles. Aparecerán en la ventana de inicio de JMP, pero no se creará una ventana visible.
dt << Stack(invisible,
columns(
:Ilim__TRIM_TARGET,
:Emulate_0000_Ilim_,
:Emulate_0001_Ilim_,
:Emulate_0010_Ilim_,
:_iLIM_BEST_VALUE
),
Source Label Column( "Label" ),
Stacked Data Column( "Data" ),
Output Table( "test" )
);¡Esto es lo que termino cuando se completa el informe final/jrn!
