X 軸のラベルの方向を変更するこんにちは、
変動グラフで、X 変数の 1 つのテキストの方向を変更しようとしています。 これがコードの一部です。
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));
誰かがそれを達成する方法を教えてくれれば幸いです。 X変数「Tool」を垂直方向に変更したいとします。
ありがとう。
Re: X 軸のラベルの方向を変更する実際の変動チャート JSL がなければ、問題がどこにあるのかを把握するのはかなり困難です。NomAxisBox(2) への参照が適切な参照ではない理由を調べるには、レポート ツリー構造を調べる必要があります。以下は、3 つの X 列が指定され、その 3 つの軸値すべてが回転された単純なスクリプトです。次に、コードは戻り、第 3 レベルの目盛りラベルを回転されていない状態に戻します。ツリー構造を調べて、それがどのように機能するかを確認してください。
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: X 軸のラベルの方向を変更するこんにちは@txnelson
素早い返信ありがとうございます。公称軸ボックスを使用しようとしています。 @ian_jmp前の回答で示されました
ただし、nom axis box(2) を使用して回転させても機能しないようです...。
質問して申し訳ありませんが、私はまだ 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: X 軸のラベルの方向を変更する[変動性] ダイアログ ボックスの [X グループ化] 領域で指定された列ごとに、特定の NomAxisBox() を個別に呼び出す必要があります。
Re: X 軸のラベルの方向を変更するこんにちは@txnelson
ローテーションする必要がある行が多数ある場合、すべての行番号をアドレス指定する唯一の方法はありますか?
それともループを使用して生成するのではなく、一度に実行する方法はありますか?
よろしくお願いします!
よろしくお願いします
Re: X 軸のラベルの方向を変更する素晴らしい。 どうもありがとう。
Re: X 軸のラベルの方向を変更するScaleBoxをAxisBoxに変更する必要があると思います
Re: X 軸のラベルの方向を変更するはい、そうでした。 生成されたスクリプトを確認した後、次のことを試しました。
report(varChartObj)[ScaleBox(2)]<< Label Row( 3, Label Orientation( "Vertical" ));
しかし、うまくいきませんでした。
ところで、私はループを使用して一度に多くのプロットを生成しています。
Re: X 軸のラベルの方向を変更するほとんどの場合、「手動で実行」してから、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 )}
)
)
);