Ajout de lignes de référence dans le graphique de variabilitéJ'ai deux tables
Table1 est dt=Data Table("Data"); Elle comporte les colonnes :WAFER, :STRUCTURE, :PARAMETER et :Value
Table2 est définie par dtr = Data Table("Targets") ; elle comporte les colonnes : PARAMETER, USL, LSL et Target.
Dans une fenêtre (active et utilisable pour la sélection de points ou la modification des légendes), je souhaite afficher les graphiques de variabilité de tous les paramètres, avec les lignes de référence (cible, USL, LSL) ajoutées pour chaque paramètre.
Si un paramètre ne possède pas de cible dans le fichier Targets (dtr) mais dispose de données dans le fichier DATA (dt), le graphique de variabilité est créé sans les lignes de référence. Sinon, des lignes de référence sont ajoutées.
nw << Append(
vc = dt << Variability Chart(
Y(:Normalize Value),
X(:STRUCTURE, :WAFER),
Variability Analysis(
:Value,
Connect Cell Means(1),
Std Dev Chart(0),
Points Jittered(1),
AIAG Labels(0),
Show Box Plots(1)
),
Where(:Parameter == currentParam),
SendToReport(
Dispatch({"Variability Chart for Normalize Value"}, "2", ScaleBox,
{Add Ref Line(lsl, "Dotted", "Red", "LSL", 2),
Add Ref Line(target, "Solid", "Black", "Target", 2),
Add Ref Line(usl, "Dotted", "Red", "USL", 2)}
)
)
)
);
Modification (jthi) : ajout de la mise en forme JSL
Modélisation statistique avancéeAutomatisation et scriptageAnalyse et modélisation de données de baseRe : Ajout de lignes de référence dans un graphique de variabilitéUtilisez une boucle « Pour chaque ligne » pour parcourir votre tableau de cibles (en supposant que tous les paramètres soient présents) et créer des graphiques. Vous pouvez afficher des graphiques de variabilité distincts selon les cas (avec ou sans limites). Dans le cas des limites, utilisez l'évaluation d'expressions pour les définir.
Re : Ajout de lignes de référence dans un graphique de variabilitéExemple
Names Default To Here(1);
dt_limits = New Table("Cities Limits",
Add Rows(4),
New Column("Process",
Character,
Set Values({"OZONE", "CO", "SO2", "NO"})
),
New Column("LSL", Numeric, Set Values([-20, -30, -25, -10])),
New Column("Target", Numeric, Set Values([5, ., 1, 5])),
New Column("USL", Numeric, Set Values([20, 30, 10, 25])),
Set Label Columns(:Process)
);
dt = Open("$SAMPLE_DATA/Cities.jmp");
dt_stack = dt << Stack(
columns(:OZONE, :CO, :SO2, :NO, :PM10, :Lead),
Output Table("Stack of Cities (OZONE, CO, SO2, NO, PM10, Lead)")
);
Close(dt, no save);
nw = New Window("",
vlb = V List Box()
);
For Each Row(dt_limits,
lowlimit = :LSL;
highlimit = :USL;
targetlimit = :Target;
If(Is Missing(targetlimit),
vlb << Append(dt_stack << Variability Chart(Y(:Data), Model("Main Effect"), X(:city)))
,
vlb << Append(Eval(EvalExpr(
dt_stack << Variability Chart(
Y(:Data),
Model("Main Effect"),
X(:city),
SendToReport(
Dispatch(
{"Variability Gauge Analysis for Data", "Variability Chart for Data"},
"2", ScaleBox,
{Add Ref Line(Expr(lowlimit), "Dotted", "Red", "LSL", 2),
Add Ref Line(Expr(targetlimit), "Solid", "Black", "Target", 2),
Add Ref Line(Expr(highlimit), "Dotted", "Red", "USL", 2)}
)
)
);
)));
);
);
Write();

Re : Ajout de lignes de référence dans le graphique de variabilitéSalut Jarmo,
1. Dans mon cas, je souhaite parcourir le PARAMÈTRE contenu dans dt, qui peut être présent ou non dans dtr. De plus, il peut y avoir plusieurs lignes avec le même PARAMÈTRE (images avec plusieurs mesures).
2. Dans votre script, je n'ai pas pu déterminer à quelle zone correspond chaque graphique. J'ai besoin que le nom du graphique de variabilité corresponde à celui du paramètre.
Re : Ajout de lignes de référence dans un graphique de variabilitéJ'ai utilisé la logique ci-dessous, mais j'ai des difficultés à ajouter les limites.
paramList = Associative Array(:Parameter << Get Values) << Get Keys;
For(i = 1, i <= N Items(paramList), i++,
currentParam = paramList[i]
);
Modification (jthi) : ajout de la mise en forme JSL
Re : Ajout de lignes de référence dans un graphique de variabilitéQuelle partie vous pose problème ? L’ajout de limites à un tableau associatif ?