comment mettre à jour la valeur de la ligne dans deux variablesBonjour à tous,
J'essaie d'écrire un script en JSL, qui crée une nouvelle fenêtre contenant des variables à deux variables et modifie la valeur de la ligne sur l'axe des ordonnées d'une valeur de 5 à une valeur de 40 en appuyant sur le bouton OK.
C'est-à-dire que le bivarite est affiché dans une nouvelle fenêtre avec une ligne d'environ 5, et après avoir appuyé sur le bouton "OK", la ligne passe de 5 à 40, dans la même fenêtre!
J'ajoute le code que j'ai écrit, il ouvre la nouvelle fenêtre et crée le bivarié avec la ligne à propos de 5 mais ne peut pas changer la valeur de la ligne en cliquant sur.
Merci à tous les aides!
TEST = open("C:\Users\shimi\Desktop\WP\TESTS\test refrsh.jmp","private");
TEST_V = 5;
New Window( "Inval example",
Button Box( "OK",
TEST_V=40;
g1 << inval; /* tell the oval to redraw */
g1 << update;
x = Tick Seconds();
While( Tick Seconds() - x < .5, 0 /* delay without wait(.5) */ );
),
g1 =TEST << Bivariate(
Y( :nean ),
X( :time ),
SendToReport(
Dispatch(
{},
"2",
ScaleBox,
{Add Ref Line( TEST_V, "Solid", "Purple", "TEST", 2 )}
)
)
)
);
Re: comment mettre à jour la valeur de la ligne dans deux variablesL’utilisation de la directive Send To Report () permet à JMP d’enregistrer un script contenant les modifications apportées. Il n'est généralement pas conçu pour les scripts. Un meilleur moyen consiste à utiliser une référence à l'objet (zone d'affichage) pour envoyer un message spécifique. Cet exemple illustre une façon de gérer les lignes de référence à l'aide d'un script.
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = dt << Bivariate(
Y( :weight ),
X( :height )
);
biv rep = biv << Report;
biv rep[AxisBox( 2 )] << Add Ref Line( 55 );
Wait( 2 );
biv rep[AxisBox( 2 )] << Remove Ref Line( 55 );
biv rep[AxisBox( 2 )] << Add Ref Line( 65 );
Re: comment mettre à jour la valeur de la ligne dans deux variablesHey,
Je ne sais pas pourquoi mais quand j'essaye de prendre le code que vous avez écrit dans mon code, mon code ne fonctionne pas.
Vous pouvez avoir une autre idée comment le faire?
Re: comment mettre à jour la valeur de la ligne dans deux variablesJe ne sais pas pourquoi votre code ne fonctionne pas non plus. Je ne sais pas comment vous avez intégré ma solution à votre code.
Je ne connais pas d'autre moyen. Même s'il existe un autre moyen, vous pouvez essayer de déboguer votre script et de le corriger au lieu de chercher un autre moyen.
Re: comment mettre à jour la valeur de la ligne dans deux variablesCeci est la partie pertinente du code que j'ai écrit avec votre solution,
J'aimerais voir si vous voyez un problème qui vous préoccupe.
Layer_Charts = vlistbox(Outline Box(Layer),biv = dt_LTK__Sum <<
Bivariate(
Y( :Name( "Mean(RAW_VALUE)" ) ),
X( :lot_data_collect_date ),
SendToReport(
Dispatch( {}, "1", ScaleBox, {Rotated Labels( "Angled" )} ),
Dispatch(
{},
"2",
ScaleBox,
{Min( Eval(CL - Dl*(1+ig)) ), Max( Eval(CL + Du*(1+ig))), Inc( Eval((UCL-LCL)/3 )),
Add Ref Line( Eval(CL), Solid, "Red", "CL", 1 ),
Add Ref Line( Eval(UCL), Dotted, "Red", "UCL", 1 ),
Add Ref Line( Eval(LCL), Dotted, "Red", "LCL", 1 )}
),
Dispatch(
{},
"Bivar Plot",
FrameBox,
{Row Legend(
ENTITY,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 1 ),
Marker Theme( "Standard" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
Spacer Box( size( 1, 10 ) ), // a little vertical space
Spacer Box( size( 1, 10 ) ), // a little vertical space
H List Box( Text Box( "enter NEW CL: " ), Spacer Box( size( 3, 1 ) ), theBinNumber = Number Edit Box() ,Spacer Box( size( 15, 1 ) )),
Spacer Box( size( 1, 10 ) ), // a little vertical space
Spacer Box( size( 1, 10 ) ),
biv rep = biv << Report;
Button Box( "OK",
NEW_CL = theBinNumber << get;
NEW_UCL = NEW_CL + Du;
NEW_LCL= NEW_CL -Dl;
biv rep[AxisBox( 2 )] << Add Ref Line( Eval(NEW_CL), Dotted, "Purple",( "NEW CL = [" || char(NEW_CL) || "] " ), 2);
biv rep[AxisBox( 2 )] << Add Ref Line( Eval(NEW_UCL), Dotted, "Purple", ( "NEW UCL = " || char(NEW_UCL) || " " ), 2);
biv rep[AxisBox( 2 )] << Add Ref Line( Eval(NEW_LCL), Dotted, "Purple", ( "NEW LCL = " || char(NEW_LCL) || " " ), 2);
biv rep[AxisBox( 1 )] << Add Ref Line( informat(date_RR << get text;); ;, "Dashed", "Green", "RR", 2);Re: comment mettre à jour la valeur de la ligne dans deux variablesJ'ai quelques onglets, chaque onglet que je possède est bivarié.
Pouvez-vous s'il vous plaît me dire si je dois changer euh si j'ai des onglets avec Bivarié dans chacun d'eux?
Pouvez-vous m'envoyer une solution qui répond au problème avec quelques onglets?
Re: comment mettre à jour la valeur de la ligne dans deux variablesVoici un exemple très simple, qui crée 2 onglets, puis quand une case de bouton () est enfoncée, il génère une ligne de référence pour l'onglet lorsque le bouton a été enfoncé
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
nw = New Window( "Example", tab = Tab Box() );
For( i = 1, i <= 2, i++,
Eval(
Substitute(
Expr(
tab << Insert(
i,
"Graph " || Char( i ),
Tab Page Box(
__biv__ = bivariate( x( :height ), y( :weight ) ),
__bb__ = Button Box( "Push Me",
__biv__rep__ << Add Ref Line(
100,
Dotted,
"Purple",
"100",
2
)
)
)
)
),
Expr( __biv__ ), Parse( "Biv" || Char( i ) ),
Expr( __bb__ ), Parse( "bb" || Char( i ) ),
Expr( __biv__rep__ ), Parse( "report(biv" || Char( i ) || ")[axisbox(1)]" )
)
)
);Re: comment mettre à jour la valeur de la ligne dans deux variablesÇa ne marche pas ...
Re: comment mettre à jour la valeur de la ligne dans deux variablesQuelle version de JMP utilisez-vous? Mon script fonctionne dans JMP 13 et 14, mais pas dans les versions antérieures.
Re: comment mettre à jour la valeur de la ligne dans deux variablesJmp12
Re: comment mettre à jour la valeur de la ligne en deux variablesVoici une version qui fonctionne pour JMP 12, 13 et 14. Les nouvelles options incorporées dans JMP 13 ont dû être retravaillées pour qu'il fonctionne dans les versions antérieures.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
nw = New Window( "Example", tab = Tab Box() );
For( i = 1, i <= 2, i++,
Eval(
Substitute(
Expr(
tab << Insert( i, "Graph " || Char( i ), __vlb__ = V List Box() );
__vlb__ << append( __biv__ = bivariate( x( :height ), y( :weight ) ) );
__vlb__ << append(
__bb__ = Button Box( "Push Me",
__biv__rep__ << Add Ref Line( 100, Dotted, "Purple", "100", 2 )
)
);
),
Expr( __vlb__ ), Parse( "Vlb" || Char( i ) ),
Expr( __biv__ ), Parse( "Biv" || Char( i ) ),
Expr( __bb__ ), Parse( "bb" || Char( i ) ),
Expr( __biv__rep__ ), Parse( "report(biv" || Char( i ) || ")[axisbox(1)]" )
)
)
);