在JMP中,如何通过指定曲线名称来自定义图形线?

时间:2017-04-20 23:16:32

标签: customization sas-jmp jsl

在JMP中,我们可以使用此代码

自定义任何拟合曲线
obj << (Curve[1] << Line Style( DashDot ));

现在我想要自定义不是基于曲线编号而是基于曲线名称的线条样式。

例如,如果我有5条曲线(按星期几分组),我想要以&#34; S&#34;开头的所有日子。 (即周末)是DashDot。

有办法做到这一点吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。它包括两个步骤: 1.将分组列内容存储在列表中。获取列表的大小 2.在绘图脚本中添加一个for循环,如果满足某个条件,则会对线条样式进行排序。

这里是第1步的代码:

Summarize(A = by(groupcol));
B=groupcol<<get property(value ordering);
If (Isempty(B),
GroupList=A;,
GroupList=B;
);
GroupListN=Nitems(GroupList);

这里是第2步的代码:

For( c=1, c<=GroupListN, c++,
    If (Left(GroupList[c],1)=="S",
    plotscript=plotscript||"biv << (Curve[" ||Char(c)||"] << Line Style( Dashed ));";
        );
    );
plotscript  = plotscript|| "rbiv = biv<<report;"
plotscript = Eval( Parse( plotscript ) );

plotscript变量包含绘图脚本。第二个代码块已添加。