Script Graph Builder pour des lignes de référence plus compliquéesEst-il possible de créer un script pour le générateur de graphiques capable de définir les lignes de référence de l'axe Y afin qu'elles commencent et se terminent à des points spécifiques de l'axe X ? Je sais comment créer des lignes de référence avec des plages mais je n'arrive pas à comprendre comment les ajuster pour qu'elles couvrent des zones spécifiques sur l'autre axe. Je joins un PDF qui montre ce que je peux faire dans JMP - le graphique de gauche - et ce que j'aimerais accomplir - le graphique de droite. L'aide à ce sujet est grandement appréciée !

Modélisation statistique avancéeAutomatisation et scriptsAccès aux donnéesPersonnalisation de masseIngénierie Qualité et ProcédésRe : Graph Builder Script pour des lignes de référence plus compliquéesMerci, Jim! Cela fonctionne vraiment bien !
Barbara
Re : Graph Builder Script pour des lignes de référence plus compliquéesLorsqu'une colonne Wrap est spécifiée, le générateur de graphiques produit un cadre distinct pour chaque graphique.Les graphiques supplémentaires doivent être produits pour chaque Frame Box().Cela peut être fait dans une opération de boucle, ou comme spécifié ci-dessous en utilisant une fonction XPath() qui appliquera le graphique supplémentaire sur tous les objets Frame Box().

Names Default To Here( 1 );
dt = open("$SAMPLE_DATA/semiconductor capability.jmp");
Graph Builder(
Size( 534, 492 ),
Show Control Panel( 0 ),
Variables( X( :NPN2 ), Y( :NPN1 ), Wrap( :lot_id ) ),
Elements( Line( X, Y, Legend( 8 ) ) )
);
(Current Report() << xpath( "//FrameBox" )) << Add Graphics Script(
Fill Color( "blue" );
Transparency( 0.3 );
Rect( 108, 112, 114, 100, 1 );
Fill Color( "purple" );
Transparency( 0.3 );
Rect( 118, 122, 122, 115, 1 );
);Re : Graph Builder Script pour des lignes de référence plus compliquéesSalut Brady,
J'ai réussi à faire fonctionner cela dans des graphiques sans retour à la ligne, mais lorsque j'enroule, le ou les rectangles n'apparaissent que dans le premier panneau. Existe-t-il un moyen d'envoyer le script rectangle à tous les niveaux ? Je joins un exemple simplifié pour montrer ce que je veux dire.
Merci!
Barbara
Re : Graph Builder Script pour des lignes de référence plus compliquéesMerci Brady!
Je vais essayer!
Meilleur,
Barbara
Re : Graph Builder Script pour des lignes de référence plus compliquéesSalut,
Voici une façon de produire ce type de graphique : utilisez JSL pour dessiner quelques rectangles là où vous le souhaitez. Pour ce faire, vous devrez connaître les limites des axes gauche et droit, ou simplement dessiner les rectangles avec des limites si larges que vous savez qu'ils seront toujours hors écran.
Lisez à propos de la fonction rect() pour plus de détails, mais en gros, ce que vous devez faire pour chaque rectangle est de choisir une couleur de remplissage, de choisir un niveau de transparence, puis de dessiner le rectangle à l'aide de la fonction rect(), qui prend 4 arguments : (gauche , haut, droite, bas). Cela doit être enveloppé dans un message << add graphiques script() et envoyé à la framebox du graphique. Utiliser le format dans le script ci-dessous est une façon de procéder.
J'ai joint un tableau avec ce script afin que vous puissiez expérimenter.
Acclamations,
Brady

Graph Builder(
Size( 523, 454 ),
Show Control Panel( 0 ),
Variables( X( :RandN1 ), Y( :RandN2 ) ),
Elements( Line( X, Y, Legend( 4 ) ) ),
//extra script begins here
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Add Graphics Script(
1,
Description( "" ),
Fill Color( "blue" );
Transparency( .3 );
Rect( -2, 0, 0, -2, 1 );
Fill Color( "purple" );
Transparency( .3 );
Rect( 1, 2, 3, 0, 1 );
)}
)
)
//extra script ends here
);