您好,這裡是繪製控制圖的腳本(所有控制限制均由用戶設置,這部分程式碼此處未顯示)。 如何修改腳本來修改控製圖的標題?
非常感謝!
dt << Control Chart Builder(
Size( 719, 464 ),
Show Two Shewhart Charts( 0 ),
Show Control Panel( 0 ),
Show Capability( 0 ),
Show Limit Summaries( 0 ),
Variables( Subgroup( :column( Lot ) ), Y( :column( CQA ) ) ),
Chart(
Points( Statistic( "Individual" ) ),
Add Spec Limits( {LSL( LSL_def ), USL( USL_def )} ),
Set Control Limits( {LCL( LCL_def ), UCL( UCL_def ), Avg( Avg )} ),
Warnings( Test 1( 1 ), Test 2( 1 ), Test 3( 1 ) )
),
SendToReport(
Dispatch(
{},
Variable,
ScaleBox,
{Min( Min( LCL_def, LSL_def ) - 1 ), Max( Max( UCL_def, USL_def ) + 1 ), Inc( 1 ), Minor Ticks( 0 ),
Add Ref Line( LSL_def, "Solid", "Blue", "LSL=" || Char( LSL_def ), 2 ),
Add Ref Line(
USL_def,
"Solid",
"Blue",
"USL=" || Char( USL_def ),
2
),
Add Ref Line( LCL_def, "Solid", "Red", "-" || Sigma || "σ=" || Char( LCL_val ), 1 ), Add Ref Line(
UCL_def,
"Solid",
"Red",
"+" || Sigma || "σ=" || Char( UCL_val ),
1
),
Add Ref Line( Avg, "", "Green", "µ=" || Char( Avg ), 1 ), Label Row( Set Font Style( "Bold" ) )}
),
Dispatch(
{},
"Control Chart Builder",
FrameBox,
{Add Graphics Script( 2, Description( "" ), Text( {10, 100}, "" ) ), Add Graphics Script(
3,
Description( "" ),
Pen Color( "black" );
V Line( Split - 0.5 );
), Grid Line Order( 1 ), Reference Line Order( 4 ), DispatchSeg(
TopSeg( 2 ),
{Set Script(
Pen Color( "black" );
V Line( Split - 0.5 );
)}
)}
)
)
)您的 Subset_Strength 是 JMP 列表,而不是字串。您可以使用 Concat Items() 來取得清單的元素,將它們移到字串,然後可以根據需要使用它。
Summarize( dt, SubSet_Strength = by( :Strength ) );
Current Report()[Text Box( 1 )] << set text( Char( Variable ) || " - " || Concat Items( Subset_Strength, ", " ) );
非常感謝 !
我還有最後一個問題。 我想根據“強度”變數的等級更改控製圖的標題。
我使用了你的程式碼並修改它:
summarize(dt,SubSet_Strength=by(:Strength));
Current Report()[Text Box( 1 )] << set text(Char( Variable)||" - "||Char( SubSet_Strength ) );
我得到了以下結果:

如何使用逗號來表示強度變數的級別,但不使用括號和引號?
謝謝你!
您可以透過簡單地引用包含標題的文字方塊來完成此操作,然後更新它。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
dt << Control Chart Builder( Variables( Y( :height ) ), Show Control Panel( 0 ) );
Current Report()[Text Box( 1 )] << set text( "new title" )
;
