亲爱的大家,
我正在努力制作一个情节,并希望得到任何帮助。 我觉得我想要做的很简单,但我无法弄清楚如何通过JMP界面或通过脚本来做到这一点。
我有一个包含100行的数据表,每行都有一个遵循线性关系的X,Y对。 我还有一个标有“选项”的第三个分类变量。 我可以轻松生成带有X和Y轴的等高线图,并通过Option列为轮廓着色。 我也可以轻松选择其中的行:Option ==“Option 3”并生成适合此数据子集的行。
但是,我似乎无法做的是生成所有数据的等高线图,只使用相同的轴在同一图形上叠加数据子集(选项3)的线性拟合。
如果有人能帮助我实现这一目标,我将非常感激。
我附上了数据表以及我希望实现的模拟图像。
一种方法是在Graph Builder中创建countour图,然后排除除所需选项之外的所有行,并在Graph Builder中创建另一个线性拟合图。您可以复制框架内容(在图形中右键单击时在编辑下找到),然后将框架内容粘贴到轮廓图中。这应该产生所需的叠加。
非常感谢你的建议。 这确实有效。
但是,我应该在我之前的电子邮件中提到我想将此作为脚本保存到数据表中,因为我需要生成这个图数百次。 在复制帧内容后保存脚本时,帧内容部分不会被保存。 还有另一种方法吗?
再次感谢,
P
你好 @pjkiley ,
让Graph Builder绘制这样的单独子集是非常困难的 @dale_lehman 复制框架内容的建议是从单独的图中叠加图形元素的好方法。但是,正如您在编写脚本时所注意到的那样,这很复杂,因为那些粘贴的帧内容不会出现。
另一种选择是绘制所有元素,然后隐藏(或者特别是,使其完全透明)您不希望看到的级别。这与绘制您希望看到的级别实际上是一样的。这是一个快速的GIF,如何使用我认为与您的数据相同的结构:
这是重现的脚本:
Open("$SAMPLE_DATA\Big Class.jmp");
Graph Builder(
Variables( X( :height ), Y( :weight ), Overlay( :sex ), Color( :sex ) ),
Elements( Contour( X, Y, Overlay( 0 ), Legend( 16 ) ), Line Of Fit( X, Y, Legend( 17 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model( 17, Properties( 1, {Transparency( 0 )}, Item ID( "M", 1 ) ) )}
)
)
);
我没有显示它,但您也可以通过双击隐藏图例中未使用的元素,然后取消选中要隐藏的元素:
我希望这有助于让你更接近!
@julian