Graph Builder Script pour des lignes de référence plus compliquéesEst-il possible de créer un script pour le générateur de graphiques qui peut 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 ne sais pas 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 je voudrais accomplir - le graphique de droite. L'aide avec ceci est grandement appréciée!
GraphiqueScriptRe: 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'elles 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 graphics script() et envoyé à la framebox du graphique. L'utilisation du format dans le script ci-dessous est une façon de le faire.
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
);
Re: Graph Builder Script pour des lignes de référence plus compliquéesMerci, Brady !
Je vais tenter le coup !
Meilleur,
Barbara
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 qui n'ont pas d'enveloppes, mais lorsque j'enveloppe, 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é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 bouclage, 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éesMerci, Jim ! Cela fonctionne vraiment bien !
Barbara