将变量传递给变异图表<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />大家好,
我是jmp的新手。所以请忽略语法。
我试图绘制如下的可变性图表:
可变性图表(
X(:年龄:身高:性别),
......
----------------
年龄,性别,身高是数据列
我想为X变量创建参数并将其单独存储。
像宣布第一的东西
Xarg_list = [:年龄:身高:性别]
然后使用:
可变性图表(
X = Xargs_list;
......
----------------
因此,如果我想添加新的权重列或删除参数列表中的任何列,我只需要更改Xargs_list
Xarg_list = [:age:height:gender:weight];
欢迎任何形成正确语法的帮助。
谢谢
Re:将变量传递给变异图xcript()函数在脚本索引中描述
帮助==>脚本索引...........搜索xpath
但在 @女士例如,xPath()函数查看所有显示输出,以查找IfBox()后跟OutlineBox()的所有示例,并返回所有找到的示例,<< delete消息传递给它们,这将关闭大纲框。 有关如何在JMP中使用显示树输出的信息,请查看“脚本编写指南”
帮助==>图书==>脚本指南
Re:将变量传递给变异图谢谢。
你能理解这个脚本是如何工作的:
(r << xpath(“// IfBox / OutlineBox”))<<删除;Re:将变量传递给变异图1)在By(...)参数之后它应该用逗号而不是分号工作。
2)尝试此操作删除除持有图形的那些外的所有轮廓框
(r << xpath("//IfBox/OutlineBox")) << delete;Re:将变量传递给变异图如果您建议以下两个问题,请感谢:
(1)。在以下的双变量图中,线By(eval(bylist [2]))不起作用;
如何通过uisng动态变量来解决?
(2)。我使用了行:r = obj << report; r [outlinebox(3)] <<关闭所有这样的;
为了最小化轮廓框,有没有办法从图中删除它们,因此双变量图仅显示没有其他轮廓框的图。
谢谢。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
xy_list = {"weight","height"};
bylist={"sex","age"};
groupbylist={"sex"};
obj=dt << Fit Group(Bivariate(
Y(Eval(xy_list[2] )),
X(Eval(xy_list[1])),
By(eval(bylist[2])); // this line didn't work, has to use By(:age);
Group by(eval (bylist)),
Fit Spline(0.1,Standardized, {Line Width(3)}),
Std Dev Chart(0 ),
SendToReport(
Dispatch(
{},
"Bivar Plot",
FrameBox,{Framesize( 200, 200 ),YAxis( Show Major Grid ),
Row Legend(:sex,Color(1), Color Theme("JMP Default"),Marker(0), Marker Theme(""),
Continuous Scale(0), Reverse Scale(0), Excluded Rows(0))})
),Show Points( 1 )
),<<{Arrange in Rows(4)},);
r=obj<<REPORT></REPORT>Re:将变量传递给变异图谢谢Jim,我只知道它为什么会起作用,
以下是错误
Variability Chart(
Y(eval(A[i])), // A[i] is not work
X( :Product, :Mequip, :Source_Lot, :lot_id ))
感谢您的建议,我也是JMP的新手,我将在Scripting Guide上了解更多信息。
非常感谢你。
最好的祝福,
忠
Re:将变量传递给变异图忠,
Eval()不起作用的原因是您更改了代码的结构。 在第一个示例中,您将列名称放入列表中:
A = {};
A[i] = Column Name(i);
在您的第二个代码版本中,您将变量“A”更改为缩放器变量
A=column name(13);
请花点时间阅读“脚本编写指南”,以便发现JSL中的不同代码结构以及如何实现它们。 它将使您进入JSL的路径变得更加容易和快捷。
帮助==>图书==>脚本指南
Re:将变量传递给变异图吉姆,你好
感谢您的及时反馈,
我尝试采用如下的简单脚本但它仍然不起作用,请提供更多建议
A=column name(13);
New window("my report", obj = context box(
Variability Chart(
Y(eval(A)), // not come out with exact text "
X( :Product, :Mequip, :Source_Lot, :lot_id ))
));
//it is okay if i change as below
New window("my report", obj = context box(
Variability Chart(
Y(:column name(13)), // it is working
X( :Product, :Mequip, :Source_Lot, :lot_id ))
));
Re:将变量传递给变异图忠,
Show()函数显示日志窗口的值。 它不会将值放入JSL代码中。 我相信你想要的是使用Eval()函数来评估列表“A”中的元素。
评估(A)
Re:将变量传递给变异图吉姆,你好
你能帮我解决下面的问题吗?
我有2个数据表:表1和表2
我想为表2运行脚本可变性图表,但需要有变量来从表1中获取值,
下面是示例脚本详细信息,但它不起作用,请帮助查看并更正它
A={};
Open(table1);
A[i]=column name(i); // want to use A[i] as variable to get value from table 1 ( for for loop to get)
Open(table2);
Variability Chart(
Y(show(A)), // this one does NOT work, please help
X( :Product, :Mequip, :Source_Lot, :lot_id ))
));
谢谢,
问候,
忠
Re:将变量传递给变异图谢谢,实际上我想出了一种方法,首先将列分组到列组中,然后使用get column group命令获取项目。
但是,当获取列组时,列的顺序从我的原始赋值更改。
我会尝试这个,看它是否保留订单。
谢谢 !
Re:将变量传递给变异图这是一个提供您正在寻求的功能的示例。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
xlist = {"age", "sex"};
dt << Variability Chart(
Y( :height, :weight ),
X( Eval( xlist ) ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Std Dev Chart( 1 )
);
看来你不知道你可以让JMP生成你想要的脚本,只需交互式运行你想要的平台,然后单击红色三角形并转到“脚本”并请求将脚本保存到脚本窗口。 它为您提供了创建脚本的方法。