楼主: edwardzxf
6136 1

proc gchart 应用 [推广有奖]

  • 0关注
  • 2粉丝

已卖:32份资源

讲师

26%

还不是VIP/贵宾

-

威望
0
论坛币
222 个
通用积分
0.4203
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
3991 点
帖子
242
精华
0
在线时间
375 小时
注册时间
2010-7-30
最后登录
2021-5-25

楼主
edwardzxf 学生认证  发表于 2014-9-18 21:15:43 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
我用proc gchart画条形图,如下:
proc gchart data=FRQ;
       vbar INT/type=sum sumvar=FRQ discrete levels=all;                        
       run;

因为我用了discrete,要把每一int对应的FRQ都显示出来,但问题是,这样使横轴标记的密密麻麻(INT=1,2,3,。。。1000),根本看不清,如下图。请问如何控制刻度的标示,只需要每隔100标记一下(INT=100,200,300,。。。1000),原图其它不变。非常感谢!

distribution.png
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Chart Hart ART ROC Discrete levels 标示 如何

沙发
edwardzxf 学生认证  发表于 2014-9-22 13:29:27
自己研究了大半天,终于找到了解决的方法。就是用Annotate Date Set http://support.sas.com/documentation/cdl/en/graphref/63022/HTML/default/viewer.htm#annodata-aboutds.htm#annodata-vartable

例如:
%let ds=frq;%let xvar=INT; %let yvar=FRQ;%let round=50;

Data anno;set &ds;
      length function color $8;
      length text $4;
      length position $1;
      retain color 'black' xsys '2' ysys '2' hsys '3';

          if mod(&xvar,&round)=0 then do;
         text=compress(put(&xvar,10.));
                 group=1;
          end;

      function='label';
      x=&xvar; y=0;
      size=1; position='E';
          if &xvar>0;

          run;

Title1 H=1 "The Distribution";goption reset=all;
axis1 value=none;
proc gchart data=anno;
      vbar &xvar/type=sum sumvar=&yvar
           anno=anno discrete levels=all maxis=axis1 subgroup=group nolegend
           ;
       run;quit;        
    就生成如下图了: f1.png

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-3 09:34