cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • New to JMP? Join us Sept. 23-24 for the Early User Edition of Discovery Summit, tailor-made for new users. Register now for free!
  • Use World Cup data to build models, explore spatial relationships, and create informative visualizations in JMP. Register. July 17, 2 pm US Eastern Time.
  • Your voice matters! Tell us how you prefer to receive JMP updates, so we can tailor our communication to your needs. Take short survey.

Discussions

Solve problems, and share tips and tricks with other JMP users.
Choose Language Hide Translation Bar
nathan-clark
Level VI

Remove "where(...)" text in report

When you do something like a bivariate, and you use the Where() command, the JMP output usually has a bit of text "where(:column 1 == 'F') or something

I am doing some scripting and I don't want that text showing up. Is there a way to keep that from happening or to remove it after the fact. Typically i just use the BY() command, but in this instance I want to basically iterate through the BY() levels so I can control which windows the live reports end up in. My script works fine, but that pesky text really makes it look meh.

 

Thanks!

1 ACCEPTED SOLUTION

Accepted Solutions
txnelson
Super User

Re: Remove "where(...)" text in report

Here is an example of a report that has a where clause and the code that deletes it.

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );

Gender_List = {"M", "F"};
age_list = {12, 13, 14, 15};
Property_List = {"Age", "Height", "Weight"};

w = New Window( "test", VLB = V List Box( Text Box( "A" ), dt << Distribution( Nominal Distribution( Column( :age ) ) ) ) );

For( j = 1, j <= N Items( Gender_List ), j++,
	VLB << Append( Text Box( Gender_List[j] ) );
	VLB << Append(
		LB = LB = Lineup Box( N Col( 2 ), spacing( 10 ),
			For( i = 1, i <= N Items( Property_List ), i++,
				gb = dt << Distribution( Continuous Distribution( Column( Property_List[i] ) ), where( :Sex == Gender_List[j] ) )
			)
		)
	);
);

whereTb = w << XPath("//TextBox[contains(text(), 'Where(:sex == Gender_List[j])')]");
whereTb << Delete;

 See the previous Community Discussion here 

Jim

View solution in original post

3 REPLIES 3
txnelson
Super User

Re: Remove "where(...)" text in report

Here is an example of a report that has a where clause and the code that deletes it.

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );

Gender_List = {"M", "F"};
age_list = {12, 13, 14, 15};
Property_List = {"Age", "Height", "Weight"};

w = New Window( "test", VLB = V List Box( Text Box( "A" ), dt << Distribution( Nominal Distribution( Column( :age ) ) ) ) );

For( j = 1, j <= N Items( Gender_List ), j++,
	VLB << Append( Text Box( Gender_List[j] ) );
	VLB << Append(
		LB = LB = Lineup Box( N Col( 2 ), spacing( 10 ),
			For( i = 1, i <= N Items( Property_List ), i++,
				gb = dt << Distribution( Continuous Distribution( Column( Property_List[i] ) ), where( :Sex == Gender_List[j] ) )
			)
		)
	);
);

whereTb = w << XPath("//TextBox[contains(text(), 'Where(:sex == Gender_List[j])')]");
whereTb << Delete;

 See the previous Community Discussion here 

Jim
nathan-clark
Level VI

Re: Remove "where(...)" text in report

Thanks! I actually was wondering if XPath could be used to fix it, but I have not used XPath much at all, so this actually helped in a couple ways!
And thanks for the link to the other discussion, I found that but totally missed the fix for my problem in it.

Re: Remove "where(...)" text in report

Yes, XPath can be used for this purpose.

 

Names Default To Here( 1 );

// open example
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );

// open platform with By role
biv = dt << Bivariate(
	Y( :weight ),
	X( :height ),
	Where( :age == 14 | :age == 16 ),
	Fit Line
);
Wait( 2 );

// hide text box
biv rep = biv << Report;
((biv rep << Top Parent) << XPath( "//TextBox" ) ) << Delete;

Recommended Articles