- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
How do I ensure that my scalebox does not stay fixed in size
I kindly need help in to create a JSL script that does not make my variability chart scalebox stay fixed in one size because I'm having problems to see any values when the value is outside my control limits. Below is an image how the chart looks like for a given script. Appreciate it if someone could advise me how to let it ensure all the points inside this chart
Variability Chart(
Y( :chart_value ),
X( :X, :Y, :link, :Z, :1, :2 ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Connect Cell Means( 1 ),
Std Dev Chart( 0 ),
Where(
:spc_chart_subset == "MEAN" & :measurement_set_name ==
"U"
),
SendToReport(
Dispatch(
{"Variability Chart for chart_value"},
"2",
ScaleBox,
{Min( -130 ), Max( 35 ), Inc( 20 ), Minor Ticks( 1 ),
Add Ref Line( 0, "Dotted", "Medium Light Gray", "", 1 ),
Add Ref Line( 26.21, "Solid", "Red", "UCL: 26.21", 1 ),
Add Ref Line(
-47.05,
"Solid",
"Medium Light Green",
"Target: -47.05",
1
), Add Ref Line( -120.3, "Solid", "Red", "LCL: -120.3", 1 )}
),
Dispatch(
{"Variability Chart for chart_value"},
"Variability Chart",
FrameBox,
{Marker Size( 3 ), Row Legend(
chart_incontrol_flag,
Color( 1 ),
Color Theme( "" ),
Marker( 1 ),
Marker Theme( "Solid" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: How do I ensure that my scalebox does not stay fixed in size
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: How do I ensure that my scalebox does not stay fixed in size
Hi @txnelson. Its nice to have you on board. I did attempted what you advised before posting this. It nearly worked unfortunately after writing the following script, I'm unable to see my Upper Control Limit (UCL).
Variability Chart(
Y( :chart_value ),
X( :X, :Y, :link, :Z, :1, :2 ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Connect Cell Means( 1 ),
Std Dev Chart( 0 ),
Where(
:spc_chart_subset == "MEAN" & :measurement_set_name ==
"U"
),
SendToReport(
Dispatch(
{"Variability Chart for chart_value"},
"2",
ScaleBox,
{ Minor Ticks( 1 ),
Add Ref Line( 0, "Dotted", "Medium Light Gray", "", 1 ),
Add Ref Line( 26.21, "Solid", "Red", "UCL: 26.21", 1 ),
Add Ref Line(-47.05,"Solid","Medium Light Green","Target: -47.05",1),
Add Ref Line( -120.3, "Solid", "Red", "LCL: -120.3", 1 )}
),
Dispatch(
{"Variability Chart for chart_value"},
"Variability Chart",
FrameBox,
{Marker Size( 3 ), Row Legend(
chart_incontrol_flag,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 1 ),
Marker Theme( "Solid" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: How do I ensure that my scalebox does not stay fixed in size
Are the reference lines you are specifying always set at the current values, for all of your charts? And what you want is for the Y axis to change based upon the current data, but you want to make sure the reference lines are always displayed?
If this is the case, you will need to run the Variability Chart, check to see what the Y axis min and max are, and if they are not the size that will allow for the reference line to be displayed, then dynamically set them.
You will need to do something like
vc = Variability Chart(
Y( :chart_value ),
X( :X, :Y, :link, :Z, :Name( "1" ), :Name( "2" ) ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Connect Cell Means( 1 ),
Std Dev Chart( 0 ),
Where( :spc_chart_subset == "MEAN" & :measurement_set_name == "U" ),
SendToReport(
Dispatch(
{"Variability Chart for chart_value"},
"2",
ScaleBox,
{Minor Ticks( 1 ), Add Ref Line( 0, "Dotted", "Medium Light Gray", "", 1 ),
Add Ref Line( 26.21, "Solid", "Red", "UCL: 26.21", 1 ), Add Ref Line(
-47.05,
"Solid",
"Medium Light Green",
"Target: -47.05",
1
), Add Ref Line( -120.3, "Solid", "Red", "LCL: -120.3", 1 )}
),
Dispatch(
{"Variability Chart for chart_value"},
"Variability Chart",
FrameBox,
{Marker Size( 3 ), Row Legend(
chart_incontrol_flag,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 1 ),
Marker Theme( "Solid" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
If(report(vc)[AxisBox(1)]<<get max, < 26.21, report(vc)[AxisBox(1)]<<max(27));
If(report(vc)[AxisBox(1)]<<get min, > -47.05, report(vc)[AxisBox(1)]<<min(-48));
Documentation on manipulating the output Display Tree is found in the JMP Documentation Library, in the Scripting Guide's section on Display Trees.
You can also see the definition of the messages that can be passed to the Axis Boxes in the Scripting Index entry for AxisBox.