SAS中文论坛
标题:
新手求助:如何在GPLOT做的图中标记出想要的点
[打印本页]
作者:
shiyiming
时间:
2009-1-8 11:12
标题:
新手求助:如何在GPLOT做的图中标记出想要的点
我的数据集有八百多个数据,形成了一个类似于弧形的样子.我想只标记出其中的十个点左右(是用数据集中的另外的元素).目前的进展是我可以把所有的点标记出,但这样太乱了.请教各位!
作者:
shiyiming
时间:
2009-1-8 13:47
标题:
Re: 新手求助:如何在GPLOT做的图中标记出想要的点
目前我的唯一的解决办法是做两张图.
goptions reset=all;
proc gplot data = work.starthalfduration2;
plot ampres*angres;
where fre>=80&&fre<=500;
run;
quit;
以上程序用来画原始图.
goptions reset=all;
proc gplot data=work.starthalfduration2;
symbol pointlabel=("#fre");
plot ampres*angres;
where fre in (80,110,140,170,200,230,260,290,320,350,380,410,440,470,500);
run;
quit;
以上程序用来画相应的点.
只能比较看.下午我再想想办法,看能不能做到一张图上.
作者:
shiyiming
时间:
2009-1-8 15:40
标题:
Re: 新手求助:如何在GPLOT做的图中标记出想要的点
我的本意是在图中相应的点有选择地标出第三个坐标来,但我发现用下面的程序得到的结果更好,虽然我没有解决掉最初的问题:
goptions reset=all;
proc gplot data = work.starthalfduration2;
plot ampres*angres;
where fre>=80&&fre<=500;
run;
goptions reset=all;
proc gplot data=work.starthalfduration2;
symbol pointlabel=("#fre");
plot ampres*angres;
where fre in (80,90,100,110,120,130,140,150,160,170,180,190,200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500);
run;
quit;
输出是两个图.一个是总趋势,一个是第三个坐标的变化趋势.我用的是SAS9.1.3.
作者:
shiyiming
时间:
2009-1-8 16:49
标题:
Re: 新手求助:如何在GPLOT做的图中标记出想要的点
annotate
作者:
shiyiming
时间:
2009-1-9 00:11
标题:
Re: 新手求助:如何在GPLOT做的图中标记出想要的点
先把图用上好的相纸打印,然后用彩笔把您想要的点描出来。其实好多事情是需要手工做的,比如老林我为了在WORD里画一条10公分长的线,经常拿着根尺对着屏幕比划半天,同事们都说“不愧为林书记,画的线根根一般齐,而且拿尺一量长度整好!”也有人总跟咱唠叨“书记您先把它打印出来,然后量了再调整不成吗?”我只要把眼一瞪,“纳税人的钱是这么个浪费法吗?”那些个人就不敢吭声了。我把真理紧紧的抓在手里呀!
作者:
shiyiming
时间:
2009-1-9 16:17
标题:
Re: 新手求助:如何在GPLOT做的图中标记出想要的点
谢谢了.现在我的新问题:
goptions reset=all;
proc gplot data=work.starthalfduration2;
symbol pointlabel=("#fre");
plot ampres*angres;
where fre in (80,90,100,110,120,130,140,150,160,170,180,190,200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500);
run;
quit;
如何修改where子句中的条件使它美一些?
作者:
shiyiming
时间:
2009-1-9 17:04
标题:
Re: 新手求助:如何在GPLOT做的图中标记出想要的点
我找到答案了:
where fre>=80&&fre<=500&&mod(fre,10)=0;
最初没有解决是因为SAS中没有用%做求余运算符.
欢迎光临 SAS中文论坛 (https://mysas.net/forum/)
Powered by Discuz! X3.2