It is pretty tough figuring out where the issue(s) is/are without having the actual Variability chart JSL. One would need to examine the Report Tree Structure to find out why a reference to NomAxisBox(2) may not be a proper reference. Below is a simple script that has 3 X columns specified, with all 3 of their axis values rotated. The code then goes back and changes the 3rd level tick labels back to unrotated. Try examining the Tree Structure so you can see how it works.
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 );
Jim