Boucles For et listes de colonnesSalut,
J'ai l'intention de créer un générateur de graphiques pour visualiser différentes colonnes de données à chaque fois. Le Graph Builder devrait être capable de prendre n'importe quel nombre de colonnes d'entrée (à condition qu'il soit inférieur à 8). J'ai construit une interface graphique d'entrée mais je ne pense pas que les valeurs y soient enregistrées. Comment puis-je transmettre correctement les données de la colonne Y sélectionnées au générateur de graphiques ? Merci!


Automatisation et scriptsAccès aux donnéesles fenêtresRe : Boucles For et listes de colonnesVeuillez utiliser le
icône pour afficher votre JSL. Il permet au lecteur de tester votre code et de fournir des réponses. Coller des images de votre code ne permettra pas cela, et par conséquent de nombreux répondeurs possibles choisiront de ne pas répondre en raison du temps qu'il faudrait pour retaper dans votre JSL.
Re : Boucles For et listes de colonnesLe journal intégré affiche "Colonne spécifiée introuvable dans le tableau de données. lors de l'accès ou de l'évaluation de 'For' , For/*###*/(j = 1, j <= Min( 8, N Items( yCol ) ), j++, Y( Eval( yCol[j] ) ))"
Mais j'ai utilisé la colonne qui est clairement dans mon tableau de données.
Re : Boucles For et listes de colonnesnames Default To Here(1);
MyGraph = Function ({yCol,xCol},{default local},
vlb = VListBox(
Graph Builder(
Size( 1255, 981 ),
Show Control Panel( 0 ),
Variables(
X( Eval(xCol) ),
For(j = 1, j <= Min(8, N Items(yCol)), j++,
Y( Eval(yCol[j])) // Evaluate each yVar
),
Group X( :Temperature )
),
Elements( Points( X, Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Y( 5 ), Y( 6 ), Y( 7 ), Y( 8 ), Legend( 11 ) ) ),
Local Data Filter(
Add Filter(
columns( :Test Stage, :Sublot, :Temperature, :Soft Bin ),
Display( :Test Stage, N Items( 4 ) ),
Display( :Soft Bin, N Items( 15 ) )
)
)
)
);
return(vlb);
);
dt = CurrentDatatable();
nw = NewWindow("Column Selection", <<MODAL></MODAL>Re : Boucles For et listes de colonnesMerci pour le conseil, voici mon script complet.
Re : Boucles For et listes de colonnesVous pouvez d'abord préparer vos variables, puis utiliser insert into pour les placer dans le générateur de graphiques.
MyGraph = Function ({yCol,xCol},{default local},
vars= Eval Expr(Variables(
X( Expr(xCol) ),
Group X( :Temperature )
));
pts= Expr(Points( X));
For(j = 1, j <= Min(8, N Items(yCol)), j++,
Insert Into(vars, Eval Expr(Y( Expr(yCol[j]))));
);
gb = Expr(
Graph Builder(
));
Insert Into(gb, Name Expr(vars));
VListBox(gb)
);Re : Boucles For et listes de colonnesDes choses comme celle-ci deviendront plus faciles une fois :folded_hands: Indexation d'expression : l'accès en lecture et en écriture sera disponible dans la future version de JMP...
Ensuite, vous n'avez pas besoin de préparer les différentes parties puis de construire votre expression finale, vous pouvez directement créer un brouillon de l'expression finale puis la manipuler à n'importe quel niveau que vous souhaitez.
par exemple, ajoutez une variable Y supplémentaire via
Insert Into ( gbExpression["Variables"], Expr(Y(:age)))
Re : Boucles For et listes de colonnesÇa a marché! Merci beaucoup!