当您执行双变量之类的操作并使用Where()命令时,JMP输出通常有一些文本“where(:column 1 == 'F')或其他内容
我正在编写一些脚本,但我不希望该文本出现。 有没有办法防止这种情况发生或事后将其删除。 通常我只使用 BY() 命令,但在这种情况下,我想基本上迭代 BY() 级别,以便我可以控制实时报告最终出现在哪些窗口中。 我的脚本运行得很好,但是那些讨厌的文字确实让它看起来很糟糕。
谢谢!
是的,XPath 可以用于此目的。
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;
谢谢! 我实际上想知道是否可以使用 XPath 来修复它,但我根本没有太多使用 XPath,所以这实际上在几个方面有所帮助!
感谢您提供其他讨论的链接,我发现了这一点,但完全错过了解决我的问题的方法。
下面是一个包含 where 子句和删除该子句的代码的报表示例。
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;
请参阅之前的社区讨论这里