limites de spécifications attribuées à partir de la colonne des limitesSalut,
J'ai un tableau de données avec les colonnes suivantes, comment puis-je attribuer les limites à la colonne de valeur en tant que propriété ?
ce qui signifie que lorsque je trace la valeur par date, je vois ces limites automatiquement

J'ai essayé
:value << set property(
"spec limits",
{LSL( : LCL ) , USL( : UCL ), Target( : Target ), Show Limits( 1 )}
);merci!
Re : limites de spécifications attribuées à partir de la colonne des limitesLes informations de cette piste supposent que 2 tables de données sont ouvertes dans votre session JMP.Un tableau de données contenant les données de mesure et un deuxième tableau contenant les limites de spécifications.Votre fonction Open() ouvre un fichier Excel appelé "Data.xlsx.S'agit-il de vos données de mesure ou de vos données de limites ?Dans les deux cas, vous ne pouvez pas intervenir dans la fonction Open(), le JSL qui modifie les limites des spécifications.Le tableau de mesure et le tableau contenant les limites doivent être entièrement lus, puis le code de mise à jour des limites doit être appliqué.
Re : limites de spécifications attribuées à partir de la colonne des limitesBonjour @txnelson ,
Je suis un peu nouveau sur JMP. Où dois-je mettre ce code ? Ce qui suit est le script dans la source.
Open(
"Data.xlsx",
Worksheets( {"Sheet2"} ),
Use for all sheets( 1 ),
Concatenate Worksheets( 1 ),
Create Concatenation Column( 1 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" ),
Eval(
Substitute(
Expr(
:value << set property(
"spec limits",
{LSL( __LSL__ ), USL( __USL__ ), ., Show Limits( 1 )}
)
),
Expr( __LSL__ ), :LSL[10],
Expr( __USL__ ), :USL[7],
)
)
)
)
Cela ne fonctionne pas pour moi. Essayer de déboguer le script provoquant une pause, peu importe où je place un point d'arrêt. Toute aide serait appréciée.
Re : limites de spécifications attribuées à partir de la colonne des limitesVolontier! Avez-vous déjà eu Ardbeg Uigeadail ? Venez-vous à Discovery 2018 à Cary ?
Re : limites de spécifications attribuées à partir de la colonne des limites1 Scotch Single Malt == 2 Bières
Re : limites de spécifications attribuées à partir de la colonne des limitesJim :
Merci! Je te dois maintenant deux bières
.
Il faudra qu'un de ces jours je confirme ma peur d'Eval / Expr / Substitute
Re : limites de spécifications attribuées à partir de la colonne des limitesVoici un script simple qui définira les limites d'affichage sans supprimer les limites déjà définies
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\Semiconductor Capability.jmp" );
mycols = dt << Get Column Names( numeric, string );
For( i = 1, i <= N Items( mycols ), i++,
spec = Column( dt, mycols[i] ) << Get Property( "Spec Limits" );
If( Is Empty( spec ) == 0,
LSL = Try( spec["LSL"], . );
USL = Try( spec["USL"], . );
Target = Try( spec["Target"], . );
Eval(
Substitute(
Expr(
Column( dt, mycols[i] ) <<
Set Property(
"Spec Limits",
{LSL( __LSL__ ), USL( __USL__ ),
Target( __Target__ ), Show Limits( 1 )}
),
),
Expr( __LSL__ ), LSL,
Expr( __USL__ ), USL,
Expr( __Target__ ), Target
)
);
);
);Re : limites de spécifications attribuées à partir de la colonne des limitesAdam:
Mon application devait pouvoir activer l'option « Afficher sous forme de lignes de référence graphiques » pour les limites de spécifications. Après avoir effectué Process Capability, chargé les limites des spécifications à partir d'une table, puis les avoir enregistrées dans la propriété column, j'ai remarqué qu'aucune des colonnes n'avait la propriété "Afficher sous forme de lignes de référence graphiques" est coché. Pour 55 colonnes, je ne voulais pas le faire manuellement (mais je l'ai fait - j'ai cherché dans la documentation mais j'ai pu découvrir comment procéder). Maintenant, j'ai JSL qui peut le faire. Remplacez le (1) par un (0) pour basculer. Vous souhaitez voir les lignes Spec Limit pour certains tracés, mais pas pour d’autres.
Noms par défaut ici ( 1 );
dt = Table de données actuelle ();
mycols = dt << Obtenir les noms de colonnes (string) ;
Pour( i = 2, i <= N Items( mycols ), i++,
Colonne ( i ) << Définir la propriété ( "Limites de spécifications", {Afficher les limites (1)} );
);
Ainsi, ce JSL basculera Show Limits(), mais il effacera les LSL(), Target(), USL() attribués à la colonne.
Quelqu'un a-t-il un moyen d'activer uniquement Show Limits() ?
Re : limites de spécifications attribuées à partir de la colonne des limitesNe fonctionne pas pour moi,
Vouliez-vous dire comme dans l'exemple ?
biv=Bivariate(
Y( :VALUE ),
X( :DATE ),
By(
:TEST
)
);
biv << Show Limits(1);
Re : limites de spécifications attribuées à partir de la colonne des limitesAfficher les limites (1) - Hier, je cherchais dans le guide de script comment procéder avec un tas de colonnes. Merci!Re : limites de spécifications attribuées à partir de la colonne des limitesSalut,
Merci pour la solution à la question d'origine.
J'ai une autre question concernant le même problème/exemple.
Puis-je créer une propriété de colonne intelligente ou une propriété de graphique de tendance afin que lorsque je crée un graphique de tendance à l'aide de JSL, les limites soient incluses.
Je pense qu’il doit y avoir quelque chose parce que j’ai de la valeur et des limites à chaque ligne.Re : limites de spécifications attribuées à partir de la colonne des limitesVotre exemple de table de données ne contient aucune colonne nommée LSL ou USL.En supposant qu'ils existent, mais qu'ils soient tout simplement absents de l'affichage, votre code reste avec quelques problèmes.Tout d’abord, vous essayez d’insérer des valeurs dans une structure de liste.
{LSL( : LSL ) , USL( : USL ), Target( : Target ), Show Limits( 1 )}
Puisqu’il s’agit d’une liste, elle ne s’analysera et ne s’évaluera pas elle-même.
Le deuxième élément est que les limites de spécifications sont une propriété de colonne et, par conséquent, un seul ensemble de limites de spécifications peut être défini pour votre colonne : Valeur.Si vous avez des colonnes nommées :LSL, :Target et :USL, vous devrez spécifier quelle ligne de la table de données contient ces limites.Vous trouverez ci-dessous une méthode qui peut être utilisée pour ajouter les limites de spécifications.Dans le code, je suppose qu'il y a des colonnes de :USL, :Target et :USL, et que la ligne 5 contient les valeurs que vous souhaitez utiliser.
Eval(
Substitute(
Expr(
:value << set property(
"spec limits",
{LSL( __LSL__ ), USL( __USL__ ), Target( __Target__ ), Show Limits( 1 )}
)
),
Expr( __LSL__ ), :LSL[5],
Expr( __USL__ ), :USL[5],
Expr( __Target__ ), :Target[5]
)
);