以特定顺序在一个图中绘制多个置信区间 [SAS]

plot more than one confidence interval in one plot at a particular order[SAS]

我需要按特定顺序在一个图中绘制多个置信区间。
比如我的数据是:

N Est. Lower Upper
1  5    3     6
2  1    0     4
3  3    0     7

我使用以下命令绘图:

proc sgplot data=confidence;
scatter y=N x=est. / xerrorlower=lower xerrorupper=upper
      markerattrs=(symbol=circlefilled size=9);
run;

SAS 总是按照从 1 到 3 的 N 顺序绘制置信区间。但是,我需要显示估计变化的趋势。即我需要的顺序是 N=2 首先是 N=3 和 N=1 对应于 est. = 1 3 5. 即使按 est. 排序后,SAS 仍然做同样的事情。我知道我可以对我的数据进行排序和添加新顺序以获得我想要的结果,但我仍然想在我的最终图中显示正确的 N 以告诉我我的置信区间数。谢谢

您可以请求一个离散的垂直轴,并使用yaxis语句指定排序方法:

yaxis discreteorder = data type = discrete;

这将告诉 SAS 忽略 N 中的值并根据它们从数据集中读取的顺序显示它们。您必须提前对数据进行排序。