cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
The Discovery Summit 2025 Call for Content is open! Submit an abstract today to present at our premier analytics conference.
See how to use to use Text Explorer to glean valuable information from text data at April 25 webinar.
Choose Language Hide Translation Bar
View Original Published Thread

Add legend in Vscroll box

Jackie_
Level VI

Hi,

 

Is there a way to add graph legends for each plots in a separate Vscroll box so that way I can avoid the blank area between two plots? I have a dashboard and am trying to make the plots more visually appealing.

Jackie__0-1711120262513.png

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Semiconductor Capability.jmp" );
Variability Chart(
	Y( :NPN1, :PNP1, :PNP2, :NPN2, :PNP3 ),
	Model( "Main Effect" ),
	X( :Wafer ID in lot ID ),
	Variability Analysis(
		:NPN1,
		Show Range Bars( 0 ),
		Show Separators( 0 ),
		Std Dev Chart( 0 ),
		Points Jittered( 1 )
	),
	Variability Analysis(
		:PNP1,
		Show Range Bars( 0 ),
		Show Separators( 0 ),
		Std Dev Chart( 0 ),
		Points Jittered( 1 )
	),
	Variability Analysis(
		:PNP2,
		Show Range Bars( 0 ),
		Show Separators( 0 ),
		Std Dev Chart( 0 ),
		Points Jittered( 1 )
	),
	Variability Analysis(
		:NPN2,
		Show Range Bars( 0 ),
		Show Separators( 0 ),
		Std Dev Chart( 0 ),
		Points Jittered( 1 )
	),
	Variability Analysis(
		:PNP3,
		Show Range Bars( 0 ),
		Show Separators( 0 ),
		Std Dev Chart( 0 ),
		Points Jittered( 1 )
	),
	SendToReport(
		Dispatch(
			{"Variability Gauge Analysis for NPN1", "Variability Chart for NPN1"},
			"Variability Chart",
			FrameBox,
			{Row Legend(
				:Wafer ID in lot ID,
				Color( 1 ),
				Color Theme( "JMP Default"(1) ),
				Marker( 0 ),
				Marker Theme( "" ),
				Continuous Scale( 0 ),
				Reverse Scale( 0 ),
				Excluded Rows( 0 )
			)}
		),
		Dispatch(
			{"Variability Gauge Analysis for PNP1", "Variability Chart for PNP1"},
			"Variability Chart",
			FrameBox,
			{Row Legend(
				Wafer ID in lot ID,
				Color( 1 ),
				Color Theme( "JMP Default"(1) ),
				Marker( 0 ),
				Marker Theme( "" ),
				Continuous Scale( 0 ),
				Reverse Scale( 0 ),
				Excluded Rows( 0 )
			)}
		),
		Dispatch(
			{"Variability Gauge Analysis for PNP2", "Variability Chart for PNP2"},
			"Variability Chart",
			FrameBox,
			{Row Legend(
				Wafer ID in lot ID,
				Color( 1 ),
				Color Theme( "JMP Default"(1) ),
				Marker( 0 ),
				Marker Theme( "" ),
				Continuous Scale( 0 ),
				Reverse Scale( 0 ),
				Excluded Rows( 0 )
			)}
		),
		Dispatch(
			{"Variability Gauge Analysis for NPN2", "Variability Chart for NPN2"},
			"Variability Chart",
			FrameBox,
			{Row Legend(
				Wafer ID in lot ID,
				Color( 1 ),
				Color Theme( "JMP Default"(1) ),
				Marker( 0 ),
				Marker Theme( "" ),
				Continuous Scale( 0 ),
				Reverse Scale( 0 ),
				Excluded Rows( 0 )
			)}
		),
		Dispatch(
			{"Variability Gauge Analysis for PNP3", "Variability Chart for PNP3"},
			"Variability Chart",
			FrameBox,
			{Row Legend(
				Wafer ID in lot ID,
				Color( 1 ),
				Color Theme( "JMP Default"(1) ),
				Marker( 0 ),
				Marker Theme( "" ),
				Continuous Scale( 0 ),
				Reverse Scale( 0 ),
				Excluded Rows( 0 )
			)}
		)
	)
);

 

1 ACCEPTED SOLUTION

Accepted Solutions
jthi
Super User


Re: Add legend in Vscroll box

You can try doing something like this but it could potentially mess up lots of different things

Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
varchart = dt << Variability Chart(
	Y(:NPN1, :PNP1, :PNP2, :NPN2, :PNP3),
	Model("Main Effect"),
	X(:Wafer ID in lot ID),
	Variability Analysis(:NPN1, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1)),
	Variability Analysis(:PNP1, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1)),
	Variability Analysis(:PNP2, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1)),
	Variability Analysis(:NPN2, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1)),
	Variability Analysis(:PNP3, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1))
);


lubs = (Report(varchart) << XPath("//OutlineBox[contains(text(), 'Variability Chart for')]//LineUpBox"));
listboxes = lubs[1::N Items(lubs)::2] << parent;

leg = dt << Color or Mark by Column(
	:Wafer ID in lot ID,
	Color Theme("Universal"(1)),
	Marker(0),
	Make window with legend(1)
);

leg_clone = leg << clone box();
Window("Legend") << Close Window;

For Each({listbox}, listboxes,
	listbox << Append(
		V Scroll Box(
			leg_clone << clone box();
		)
	)
);

-Jarmo

View solution in original post

2 REPLIES 2
jthi
Super User


Re: Add legend in Vscroll box

You can try doing something like this but it could potentially mess up lots of different things

Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
varchart = dt << Variability Chart(
	Y(:NPN1, :PNP1, :PNP2, :NPN2, :PNP3),
	Model("Main Effect"),
	X(:Wafer ID in lot ID),
	Variability Analysis(:NPN1, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1)),
	Variability Analysis(:PNP1, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1)),
	Variability Analysis(:PNP2, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1)),
	Variability Analysis(:NPN2, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1)),
	Variability Analysis(:PNP3, Show Range Bars(0), Show Separators(0), Std Dev Chart(0), Points Jittered(1))
);


lubs = (Report(varchart) << XPath("//OutlineBox[contains(text(), 'Variability Chart for')]//LineUpBox"));
listboxes = lubs[1::N Items(lubs)::2] << parent;

leg = dt << Color or Mark by Column(
	:Wafer ID in lot ID,
	Color Theme("Universal"(1)),
	Marker(0),
	Make window with legend(1)
);

leg_clone = leg << clone box();
Window("Legend") << Close Window;

For Each({listbox}, listboxes,
	listbox << Append(
		V Scroll Box(
			leg_clone << clone box();
		)
	)
);

-Jarmo
hogi
Level XII


Re: Add legend in Vscroll box

One could also directly copy the Display Box of the legend and paste it again to Scroll Boxes.

 

The general issue with these approaches:
The legend loses it's interactivity

 

There is a Request in the wish list from May 2023:

Graph Builder - open legend in new window (or in it's own ScrollBox) 

up to now it did not collect any Kudo - so most probably it will get archived soon.