Come posso assicurarmi che la mia scalebox non rimanga di dimensioni fisse?Ho gentilmente bisogno di aiuto per creare uno script JSL che non faccia sì che la mia scalebox del grafico di variabilità rimanga fissa in una dimensione perché ho problemi a vedere i valori quando il valore è al di fuori dei miei limiti di controllo. Di seguito è riportata un'immagine di come appare il grafico per un determinato script. Apprezzerei se qualcuno potesse consigliarmi come garantire tutti i punti all'interno di questo grafico

Variability Chart(
Y( :chart_value ),
X( :X, :Y, :link, :Z, :1, :2 ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Connect Cell Means( 1 ),
Std Dev Chart( 0 ),
Where(
:spc_chart_subset == "MEAN" & :measurement_set_name ==
"U"
),
SendToReport(
Dispatch(
{"Variability Chart for chart_value"},
"2",
ScaleBox,
{Min( -130 ), Max( 35 ), Inc( 20 ), Minor Ticks( 1 ),
Add Ref Line( 0, "Dotted", "Medium Light Gray", "", 1 ),
Add Ref Line( 26.21, "Solid", "Red", "UCL: 26.21", 1 ),
Add Ref Line(
-47.05,
"Solid",
"Medium Light Green",
"Target: -47.05",
1
), Add Ref Line( -120.3, "Solid", "Red", "LCL: -120.3", 1 )}
),
Dispatch(
{"Variability Chart for chart_value"},
"Variability Chart",
FrameBox,
{Marker Size( 3 ), Row Legend(
chart_incontrol_flag,
Color( 1 ),
Color Theme( "" ),
Marker( 1 ),
Marker Theme( "Solid" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);Automazione e scriptingIngegneria della qualità e dei processiRe: Come posso assicurarmi che la mia scalebox non rimanga di dimensioni fisse?Le linee di riferimento che stai specificando sono sempre impostate sui valori correnti, per tutti i tuoi grafici?E quello che vuoi è che l'asse Y cambi in base ai dati correnti, ma vuoi assicurarti che le linee di riferimento siano sempre visualizzate?
Se questo è il caso, dovrai eseguire il Grafico della variabilità, verificare quali sono i valori minimo e massimo dell'asse Y e, se non hanno le dimensioni che consentiranno la visualizzazione della linea di riferimento, impostarli dinamicamente.
Dovrai fare qualcosa del genere
vc = Variability Chart(
Y( :chart_value ),
X( :X, :Y, :link, :Z, :Name( "1" ), :Name( "2" ) ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Connect Cell Means( 1 ),
Std Dev Chart( 0 ),
Where( :spc_chart_subset == "MEAN" & :measurement_set_name == "U" ),
SendToReport(
Dispatch(
{"Variability Chart for chart_value"},
"2",
ScaleBox,
{Minor Ticks( 1 ), Add Ref Line( 0, "Dotted", "Medium Light Gray", "", 1 ),
Add Ref Line( 26.21, "Solid", "Red", "UCL: 26.21", 1 ), Add Ref Line(
-47.05,
"Solid",
"Medium Light Green",
"Target: -47.05",
1
), Add Ref Line( -120.3, "Solid", "Red", "LCL: -120.3", 1 )}
),
Dispatch(
{"Variability Chart for chart_value"},
"Variability Chart",
FrameBox,
{Marker Size( 3 ), Row Legend(
chart_incontrol_flag,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 1 ),
Marker Theme( "Solid" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
If(report(vc)[AxisBox(1)]<<GET max=""> -47.05, report(vc)[AxisBox(1)]<<MIN></MIN></GET>
La documentazione sulla manipolazione dell'albero di visualizzazione dell'output si trova nella libreria della documentazione di JMP, nella sezione relativa agli alberi di visualizzazione della Guida allo scripting.
Puoi anche vedere la definizione dei messaggi che possono essere passati agli Axis Box nella voce Scripting Index per AxisBox.
Re: Come posso assicurarmi che la mia scalebox non rimanga di dimensioni fisse?CIAO @txnelson . È bello averti a bordo. Ho tentato ciò che mi hai consigliato prima di pubblicare questo. Sfortunatamente ha quasi funzionato dopo aver scritto il seguente script, non riesco a vedere il mio limite di controllo superiore (UCL).

Variability Chart(
Y( :chart_value ),
X( :X, :Y, :link, :Z, :1, :2 ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Connect Cell Means( 1 ),
Std Dev Chart( 0 ),
Where(
:spc_chart_subset == "MEAN" & :measurement_set_name ==
"U"
),
SendToReport(
Dispatch(
{"Variability Chart for chart_value"},
"2",
ScaleBox,
{ Minor Ticks( 1 ),
Add Ref Line( 0, "Dotted", "Medium Light Gray", "", 1 ),
Add Ref Line( 26.21, "Solid", "Red", "UCL: 26.21", 1 ),
Add Ref Line(-47.05,"Solid","Medium Light Green","Target: -47.05",1),
Add Ref Line( -120.3, "Solid", "Red", "LCL: -120.3", 1 )}
),
Dispatch(
{"Variability Chart for chart_value"},
"Variability Chart",
FrameBox,
{Marker Size( 3 ), Row Legend(
chart_incontrol_flag,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 1 ),
Marker Theme( "Solid" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
Re: Come posso assicurarmi che la mia scalebox non rimanga di dimensioni fisse?Credo che otterrai ciò che desideri se elimini i riferimenti Min(), Max() e Inc() dalla definizione Scale Box e lasci che sia la piattaforma a determinare quali dovrebbero essere tali impostazioni per ogni esecuzione del codice.