Modifier l'orientation de l'étiquette sur l'axe XSalut,
Dans le tableau de variabilité, j'essaie de changer l'orientation du texte de l'une des variables X. Voici la partie du code.
X_List = {"SPLIT", "LOTID", "Tool", "Boat", "Wfrid"};
varChartObj = Variability Chart(
Y( collist[i] ),
X( Eval(X_List) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Std Dev Chart( 0 ),
Show Box Plots( 1 ),
);
report(varChartObj)[Frame Box(1)]<< Row Legend( Eval(X_Legend), Color( 1 ), Marker( 0 ) );
report(varChartObj)[axisbox(1)]<< Add Ref Line( LSL, "Solid", "Red", "LSL", 1 );
report(varChartObj)[axisbox(1)]<< Add Ref Line( USL, "Solid", "Red", "USL", 1 );
report(varChartObj)[axisbox(1)]<< Add Ref Line( Target, "Dashed", "Red", "Target", 1 );
report(varChartObj)[axisbox(1)]<< min(LSL-0.1*(USL-LSL));
report(varChartObj)[axisbox(1)]<< max(USL+0.1*(USL-LSL));
report(varChartObj)[axisbox(1)]<< Inc(0.1*abs(USL-LSL));
J'apprécierais si quelqu'un peut me montrer comment je peux y parvenir. Dites si je veux changer la variable X "Outil" en orientation verticale.
Merci.
Re : Modifier l'orientation de l'étiquette sur l'axe XIl est assez difficile de déterminer où se situent le ou les problèmes sans disposer du véritable tableau de variabilité JSL.Il faudrait examiner la structure arborescente du rapport pour découvrir pourquoi une référence à NomAxisBox(2) peut ne pas être une référence appropriée.Vous trouverez ci-dessous un script simple comportant 3 colonnes X spécifiées, avec leurs 3 valeurs d'axe pivotées.Le code revient ensuite en arrière et modifie les étiquettes de graduation de 3ème niveau en non pivotées.Essayez d'examiner la structure arborescente pour voir comment elle fonctionne.
names default to here(1);
New Table( "Example",
Add Rows( 15 ),
New Column("lot_id",
Character,
"Nominal",
Set Values(
{"lot1", "lot1", "lot1", "lot1", "lot1", "lot2", "lot2", "lot2", "lot2",
"lot2", "lot3", "lot3", "lot3", "lot3", "lot3"}
)
),
New Column("wafer",
Numeric( 1 ),
"Nominal",
Set Values( [3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] )
),
New Column("SITE",
Numeric( 1 ),
"Nominal",
Set Values( [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5] )
),
New Column("NPN1",
Numeric,
"Continuous",
Format( "Best", 10 ),
Set Values(
[114.946183872216, 113.382890501824, 114.666518192776, 107.884015560041,
113.065582322339, 114.857323947632, 114.559464479242, 114.221688530977,
112.349531387849, 113.253501139582, 113.07512667471, 114.613256881221,
112.309137695657, 115.116308198793, 116.436528584316]
)
)
);
vc=Variability Chart(
Y( :NPN1 ),
X( :lot_id, :wafer, :SITE ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Std Dev Chart( 0 ),
SendToReport(
Dispatch(
{"Variability Chart for NPN1"},
"",
NomAxisBox,
{Rotated Tick Labels( 1 )}
),
Dispatch(
{"Variability Chart for NPN1"},
"",
NomAxisBox( 2 ),
{Rotated Tick Labels( 1 )}
),
Dispatch(
{"Variability Chart for NPN1"},
"",
NomAxisBox( 3 ),
{Rotated Tick Labels( 1 ), Set Width( 980 ), Set Height( 21 )}
)
)
);
report(vc)[Nom Axis Box( 3 )] << Rotated Tick Labels( 0 );
Re : Modifier l'orientation de l'étiquette sur l'axe XSalut @txnelson
Merci pour la réponse rapide, j'essaie d'utiliser la boîte nom axis qui @ian_jmp montré à la réponse précédente
cependant, cela ne semble pas fonctionner en utilisant la boîte d'axe nom (2) pour le faire pivoter ....
Désolé pour la question, je suis encore un débutant qui travaille avec JMP
GenTabRpt = Function( {dt_chart, _CATE, _PARM},
rc = dt_chart << report;
_PARM = Munger( _PARM, (Munger( _PARM, 1, "/" )), "/", "_" );
If( Contains Item( _PARM, "IBL0", "_" ),
rc[axis box( 1 )] << Scale( "Log" ) << Show Minor Labels( 0 ) << Min( 1e-1 ),
);
If( Contains Item( _PARM, "Ir0", "_" ),
rc[axis box( 1 )] << Scale( "Log" ) << Show Minor Labels( 0 ) << Min( 1e-12 ) << Max( 1e-5 ),
);
If( Contains Item( _PARM, "T2P", "_" ),
rc[axis box( 1 )] << Scale( "Log" ) << Show Minor Labels( 0 ) << Min( 1e-9 ) << Max( 1e-3 ),
);
If(
Contains Item( _PARM, "Iread", "_" ) :|</img> Contains Item( _PARM, "Ir1", "_" ) :|</img> Contains Item( _PARM, "Ir0", "_" ) :|
Contains Item( _PARM, "T2P", "_" ),
rc[axis box( 1 )] << Format( Scientific ),
);
If( dt_chart == "Variability Chart[]",
rc[Text Edit Box( 1 )] << Set Font Size( 1 ) << Hide( 1 ),
);
rc[Nom Axis Box(2)] << Rotated Tick Labels( 0 );
rc[FrameBox( 1 )] << Marker Size( 3 );// << Frame Size (850,240);
rc[axis box( 2 )] << Show Major Grid( 1 );
/* << Label Row( 5, Label Orientation( "Vertical" ) )
<< Label Row( 6, Label Orientation( "Vertical" ) )
<< Label Row( 7, Label Orientation( "Vertical" ) )
<< Label Row( 8, Label Orientation( "Vertical" ) )
<< Label Row( 9, Label Orientation( "Vertical" ) )
<< Label Row( 10, Label Orientation( "Vertical" ) );
*/ rc[Outline Box( 2 )] << set title( Char( _PARM ) );
rc[Outline Box( 2 )] << save picture( RPTFolder || Char( _PARM ) || ".emf" );
If( _CATE == "MISSING",
_CATE = "WAT_Summary_Plot"
);
If( _CATE != _PreCATE,
tb << Append( _CATE, vlb = V List Box() );
vlb << append( rc );
dt_chart << close window;
,
vlb << append( rc );
dt_chart << close window;
);
Insert Into( TestList, Char( _PARM ) );
Insert Into( CateList, Char( _CATE ) );
_PreCATE = _CATE;
);
Re : Modifier l'orientation de l'étiquette sur l'axe XUn appel distinct à chaque NomAxisBox() spécifique pour chaque colonne spécifiée dans la zone "Regroupement X" de la boîte de dialogue Variabilité devra être effectué.
Re : Modifier l'orientation de l'étiquette sur l'axe XSalut @txnelson
S'il y a plusieurs lignes à faire pivoter, la seule façon de traiter toutes les lignes est-elle numérique ?
ou a-t-il un moyen de le faire en même temps au lieu d'utiliser une boucle pour le générer ?
Merci d'avance!
Cordialement
Re : Modifier l'orientation de l'étiquette sur l'axe XGénial. Merci beaucoup.
Re : Modifier l'orientation de l'étiquette sur l'axe XJe pense que vous devez remplacer ScaleBox par AxisBox
Re : Modifier l'orientation de l'étiquette sur l'axe XOui je l'ai fait. Après avoir regardé le script généré, j'ai essayé :
report(varChartObj)[ScaleBox(2)]<< Label Row( 3, Label Orientation( "Vertical" ));
Mais cela n'a pas fonctionné.
Au fait, j'utilise une boucle pour générer plusieurs tracés en même temps.
Re : Modifier l'orientation de l'étiquette sur l'axe XIl est presque toujours préférable de « le faire à la main », puis d'inspecter le code généré par JMP :
NamesDefaultToHere(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Variability Chart(
Y( :height ),
X( :age, :sex ),
Std Dev Chart( 0 ),
SendToReport(
Dispatch(
{"Variability Chart for height"},
"",
NomAxisBox,
{Rotated Tick Labels( 1 )}
)
)
);