sas sgplot文本在不同的位置

时间:2015-01-13 08:43:22

标签: graph sas

在sgplot中,使用inset语句可以在图形中插入一个文本框。

proc sgplot data=_test5;
vbar x / response=y ;
keylegend / position=topright noborder autoitemsize;
xaxis display=(nolabel);
yaxis grid;
inset 'text here' /border position=topright;
run;

对于position=,它只提供几个固定选项。但实际上我知道文本的理想位置就像(400,380)。有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:3)

如果您想将文字放在不同的地方,您有几个选择。最简单的是注释数据集,您可以在其中指定文本的放置位置。这是here的解释。使用上一个问题中的示例数据集的示例:

data annods;
  input x1 y1 function $ drawspace :$10. label &:$9.;
datalines;
400 380 text WALLPIXEL Text Here  
;;;;
run;    

proc sgplot data=_test3 sganno=annods;
vbarparm category=Day response=DailySales/group=dow barwidth=0.7 nooutline;
series x=day y=WeeklySales;
keylegend / position=topright noborder autoitemsize;
xaxis display=(nolabel);
yaxis grid;
run;

如果您放置了大量这些内容,则可以使用scatterplotmarkerchar将文本作为重叠散点图放置,或使用9.4 TS1M2中提供的text绘图。

我不相信有一种方法可以制作一个精确指定的插图,尽管可能有办法解决它与各种边距的关系。我怀疑Sanjay(主要的开发人员经常在communities.sas.com上回答问题)是特别适合回答的人。