cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
JMP Wish List

We want to hear your ideas for improving JMP software.

  1. Search: Please search for an existing idea first before submitting a new idea.
  2. Submit: Post your new idea using the Suggest an Idea button. Please submit one actionable idea per post rather than a single post with multiple ideas.
  3. Kudo & Comment Kudo ideas you like, and comment to add to an idea.
  4. Subscribe: Follow the status of ideas you like. Refer to status definitions to understand where an idea is in its lifecycle. (You are automatically subscribed to ideas you've submitted or commented on.)

We consider several factors when looking for what ideas to add to JMP. This includes what will have the greatest benefit to our customers based on scope, needs and current resources. Product ideas help us decide what features to work on next. Additionally, we often look to ideas for inspiration on how to add value to developments already in our pipeline or enhancements to new or existing features.

Choose Language Hide Translation Bar

Add a <<Set Function() message to the column switcher

It would be great if we could run a given script each time a new variable is selected with the column switcher feature.

4 Comments
Jeff_Perkinson
Community Manager
Status changed to: Yes, Stay Tuned!

We are working on this for JMP 16.

I've been working on this for JMP 16. I'm planning on using a technique similar to the Text Edit Box or the Button Box which have a Set Script option. Below is an example which would work in JMP 16. Let me know if you have any suggestions or concerns.

 

dt = Open("$SAMPLE_DATA/Process Measurements.jmp");
// Set up a Graph with a Reference line at the mean value for Process 1 on the x-axis
gb = dt << Graph Builder(
	Show Control Panel(0),
	Variables( X( :Process 1 ), Y( :Process 2 ) ),
	Elements( Points( X, Y, Legend( 2 ) ), Smoother( X, Y, Legend( 3 ) ) ),
	SendToReport(
		Dispatch(
			{},
			"Process 1",
			ScaleBox,
			{Add Ref Line( 10.0787278156801, "Dashed", "Blue", "Mean", 2 )}
		)
	)
);
// Set up a Column Switcher for Process 1
cs = gb << Column Switcher(
	:Process 1,
	{:Process 1, :Process 3, :Process 4, :Process 5, :Process 6, :Process 7}
);

// Set a Script on Process 1 which recreates the Ref Line at the new mean for the column on the X-axis.
cs << Set Script(
	report = gb << Report;
	col = Column(cs << Get Current());
	meanX = ColMean(col);
	axisbox = report[axis box( 1 )];
	axisbox << Add Ref Line( meanX, "Dashed", blue, "Mean", 2 );	
);
anne_sa
Level VI

Hello @paul_vezzetti ,

 

It is exactly what I had in mind.

Thank you very much for your help it is highly appreciated to see wishes coming true!

Jeff_Perkinson
Community Manager
Status changed to: Delivered

As noted above, with the release of JMP 16 the Column Switcher object supports a script option.

 

Here's the example from the Scripting Index:

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Car Poll.jmp" );
obj = dt << Contingency( Y( :size ), X( :marital status ) );
ColumnSwitcherObject = obj << Column Switcher(
	:marital status,
	{:sex, :country, :marital status}
);
ColumnSwitcherObject << Set Script(
	Print( "New Value: " || Char( ColumnSwitcherObject << Get Current ) )
);