différentes limites de spécifications sur un graphique de variabilitéBonjour,
Je crée un graphique de variabilité séparé par OVL_UDL et PARAMETER_NAME avec quatre variables X. Je le fais par script avec une boucle for. Je veux pouvoir afficher la valeur de spécification sur les graphiques dont la valeur est contenue dans la même table de données. Cependant, j'ai une limite différente dans chaque graphique (par variable Loop) et également entre graphique à graphique (par OVL_UDL et PARAMETER_NAME). J'ai parcouru le forum mais je n'ai pas vraiment trouvé de moyen de le faire en utilisant JSL.
overunder = Associative Array( dt:OVL_UDL << Get Values ) << Get Keys;
For( i = 1, i <= N Items( overunder ), i++,
win = New Window( "window",
var = dt2 << Variability Chart(
Y( :VALUE ),
X( :ROUTE, :OPERATION, :PRODUCT, :ANALYTICAL_ENTITY, :DATA_COLLECTION_TIME ),
Connect Cell Means( 1 ),
Std Dev Chart( 0 ),
Points Jittered( 1 ),
AIAG Labels( 0 ),
Where( :OVL_UDL == overunder[i] ),
By( :PARAMETER, :OVL_UDL ),
SendToReport(
Dispatch(
{"Variability Chart for VALUE"},
"Variability Chart",
FrameBox,
{Row Legend(
:Current Layer Scanner,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
), Row Legend(
ALT,
Color( 0 ),
Color Theme( "" ),
Marker( 1 ),
Marker Theme( "Solid" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
)
)
);
win << save picture;

Automatisation et scriptsPersonnalisation de masseRe : différentes limites de spécification sur un graphique de variabilitéMerci. D'une manière ou d'une autre, lorsqu'il parcourt l'OVL_UDL, il ne conserve que les limites correctes sur le dernier graphique. Je pense si je peux écrire le script pour diviser la table en plusieurs tables (une pour eqach OVL_UDL) et exécuter le script dans chaque table. Comment puis-je écrire un script pour ouvrir un fichier à la fois, exécuter le script de traçage, ouvrir le fichier suivant et exécuter à nouveau le même script.
Re : différentes limites de spécification sur un graphique de variabilitéLa boucle devrait fonctionner correctement, mais vous devez utiliser des limites et des tailles de groupe correctes pour chacun des graphiques. Vous trouverez ci-dessous un exemple rapide et sale (je nettoierais certainement beaucoup ce code, mais cela devrait fonctionner comme une sorte de point de départ).
Voir plus...
(Le graphique de variabilité peut également être créé à l'aide de l'option Par, mais cela nécessitera un type de boucle un peu différent, car vous feriez très probablement une boucle sur les graphiques de variabilité et non sur les paramètres).
Re : différentes limites de spécification sur un graphique de variabilitéMerci beaucoup. Je pense que cela fonctionne parfaitement sauf une chose. Je vois que vous n'avez conservé qu'une seule valeur OVL_UDL et créé un seul graphique de variabilité. Je veux qu'un graphique séparé soit créé pour chaque variable OVL_UDL. Dans les données, il devrait y avoir pour BC1_BM3 (que vous avez) mais un graphique de plus pour BC2_BM3. J'ai essayé de mettre une boucle for pour itérer votre script pour chaque OVL_UDL mais je n'ai pas pu afficher les limites. Une idée de comment nous pouvons y parvenir?
Merci
Re : différentes limites de spécification sur un graphique de variabilitéCela peut être fait probablement beaucoup plus facilement avec le générateur de graphiques qu'avec le graphique de variabilité, mais si vous souhaitez utiliser le graphique de variabilité ci-dessous, l'exemple simplifié à l'aide de scripts graphiques
Names Default To Here(1);
dt = Open("$DOWNLOADS/test.jmp");
dt << Delete Rows(Loc(dt[0, "OVL_UDL"], "BC1_BM3"));
var = Variability Chart(
Y(:VALUE),
X(:Loop, :OPERATION, :ANALYTICAL_ENTITY, :DATA_COLLECTION_TIME)
);
spec_table = dt << Summary(
Group(:Loop),
// N Categories(:UP_CONTROL_LMT), // could be used for sanity check
Min(:UP_CONTROL_LMT),
Freq("None"),
Weight("None"),
statistics column name format("column"),
Link to original data table(0),
invisible,
output table("spectable")
);
specs = Associative Array(Column(spec_table, "Loop"), Column(spec_table, "UP_CONTROL_LMT"));
groups = dt << Summary(
Group(Loop, :OPERATION, :ANALYTICAL_ENTITY, :DATA_COLLECTION_TIME),
statistics column name format("column"),
Link to original data table(0),
invisible,
output table("groups")
);
fl_groups = N Rows(Loc(groups[0, "Loop"], "FL"));
sl_groups = N Rows(Loc(groups[0, "Loop"], "FL"));
framebox = Report(var)[frame box(1)];
framebox << Add Graphics Script(
Pen Color("Blue");
Pen Size(1);
H Line(0, fl_groups, specs["FL"]);
H Line(fl_groups, fl_groups + sl_groups, specs["SL"]);
);
framebox << Y Axis(Max(15));
